[texhax] h-cross in plain TeX?

Stephen Hicks sdh33 at cornell.edu
Tue Mar 16 08:19:32 CET 2010


If you've got access to the amssymb fonts, you can load them up in
plain TeX.  The \hslash character is "7D in the msbm font.  This will
get it for you in plain TeX at 10pt.  You'll obviously need to adjust
the sizes if your overall text is not 10pt (see TeXbook p415, TeX by
Topic p192).

\newfam\msb
\font\tenmsb=msbm10
\font\sevenmsb=msbm7
\font\fivemsb=msbm5
\textfont\msb=\tenmsb
\scriptfont\msb=\sevenmsb
\scriptscriptfont\msb=\fivemsb
\def\hex#1{\ifcase#10\or 1\or 2\or 3\or 4\or 5\or 6\or
   7\or 8\or 9\or A\or B\or C\or D\or E\or F\fi}
\mathchardef\hslash="0\hex\msb7D

If you don't have access to these fonts, then maybe your best bet is
to try to compose it yourself (unless you wanna dig around the
amssymb's mf sources and try to pull out just the one glyph you want -
if so, grep for 'oct"175"' in brmsb.mf).  Plain TeX's \hbar is in fact
such a composition:

**\show\hbar
> \hbar=macro:
->{\mathchar '26\mkern -9muh}.

where \mathchar'26 is a macron (bar) accent.  I don't find any good
glyphs in the standard cm fonts to fit the bill - the most promising
seems to be "20 from cmr (TeXbook p427).  Thus, you could do

\font\eighteenrm=cmr18
\font\twelverm=cmr12
\newfam\slashfam
\textfont\slashfam=\eighteenrm
\scriptfont\slashfam=\twelverm
\scriptscriptfont\slashfam=\ninerm
\mathchardef\myslash="0\hex\slashfam20
\def\hslash{{\myslash\mkern-9muh}}

Even then, the kerns aren't quite right for the scripts - you'd need a
\mathchoice to really nail it.  Or if you wanted to just ignore the
scripts entirely, you could forget about the \newfam and just

\font\slashfont=cmr18\def\hslash{{\hbox{\slashfont\char"20}\mkern-9muh}}

Cheers,
steve

On Mon, Mar 15, 2010 at 8:25 PM, D. R. Evans <doc.evans at gmail.com> wrote:
> In plain TeX, what is the preferred method for obtaining the glyph for the
> math italic h-cross (the unicode character U+210F, as rather nicely
> rendered at
> http://www.fileformat.info/info/unicode/char/210f/planck_constant_over_two_pi.png)?
>
> Plain TeX has an \hbar in which the "h" part of the glyph is nice, but the
> stroke is horizontal instead of slanted lower left to upper right. [See
> page 435 of the TeXBook.]
>
> I googled, but much to my surprise couldn't find anything :-(
>
>  Doc
>
> --
> Web:  http://www.sff.net/people/N7DR
>
>
> _______________________________________________
> TeX FAQ: http://www.tex.ac.uk/faq
> Mailing list archives: http://tug.org/pipermail/texhax/
> More links: http://tug.org/begin.html
>
> Automated subscription management: http://tug.org/mailman/listinfo/texhax
> Human mailing list managers: postmaster at tug.org
>



More information about the texhax mailing list