Date: Sun, 09 Jun 2002 00:40:14 -0400 From: Stephen Gildea To: karl@freefriends.org (Karl Berry) cc: jgay@gnu.org Subject: Re: Texinfo fonts I used to like to use Adobe Times, Helvetica, and Courier because a major output format for us is PDF, and bitmapped fonts in a PDF file look ugly with acroread. I don't use this as much as I used to now that I can get Type 1 CM fonts. There are parts of this patch that look ugly, but it works for me. It would be great to see something like this support in the Texinfo distribution. < Stephen *** texinfo.tex Mon Apr 19 17:13:00 1999 --- ps_texinfo.tex Mon Apr 19 17:17:50 1999 *************** *** 58,69 **** % It is possible to adapt texinfo.tex for other languages. You can get % the existing language-specific files from ftp://ftp.gnu.org/gnu/texinfo/. ! \message{Loading texinfo [version \texinfoversion]:} % If in a .fmt file, print the version number % and turn on active characters that we couldn't do earlier because % they might have appeared in the input file name. ! \everyjob{\message{[Texinfo version \texinfoversion]}% \catcode`+=\active \catcode`\_=\active} % Save some parts of plain tex whose names we will redefine. --- 58,69 ---- % It is possible to adapt texinfo.tex for other languages. You can get % the existing language-specific files from ftp://ftp.gnu.org/gnu/texinfo/. ! \message{Loading texinfo [version \texinfoversion ps]:} % If in a .fmt file, print the version number % and turn on active characters that we couldn't do earlier because % they might have appeared in the input file name. ! \everyjob{\message{[Texinfo version \texinfoversion ps]}% \catcode`+=\active \catcode`\_=\active} % Save some parts of plain tex whose names we will redefine. *************** *** 858,890 **** \newcount\mainmagstep \mainmagstep=\magstephalf % Set the font macro #1 to the font named #2, adding on the % specified font prefix (normally `cm'). % #3 is the font's design size, #4 is a scale factor ! \def\setfont#1#2#3#4{\font#1=\fontprefix#2#3 scaled #4} % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix % before you read in texinfo.tex. \ifx\fontprefix\undefined ! \def\fontprefix{cm} \fi % Support font families that don't use the same naming scheme as CM. ! \def\rmshape{r} ! \def\rmbshape{bx} %where the normal face is bold ! \def\bfshape{b} ! \def\bxshape{bx} ! \def\ttshape{tt} ! \def\ttbshape{tt} ! \def\ttslshape{sltt} ! \def\itshape{ti} ! \def\itbshape{bxti} ! \def\slshape{sl} ! \def\slbshape{bxsl} ! \def\sfshape{ss} ! \def\sfbshape{ss} ! \def\scshape{csc} ! \def\scbshape{csc} \ifx\bigger\relax \let\mainmagstep=\magstep1 --- 858,916 ---- \newcount\mainmagstep \mainmagstep=\magstephalf + % expand #1, a control sequence, without the leading escape char + \def\csstringname#1{\expandafter\csstrcdr\string#1;} + \def\csstrcdr#1#2;{#2} + + % Set the font macro #1 to the font named #2, adding on the % specified font prefix (normally `cm'). % #3 is the font's design size, #4 is a scale factor ! \def\setfont#1#2#3#4{\dimen255=#3pt\divide\dimen255by1000 ! \multiply\dimen255by#4% ! \global\expandafter\font\csname f/\csstringname#1\endcsname=\fontprefix#2\fontencoding\space at\dimen255 ! \global\def#1{\csname f/\csstringname#1\endcsname ! \def\fcurshape{#2}% ! \def\fcursize{#3}% ! \def\fcurscale{#4}}} ! % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix % before you read in texinfo.tex. \ifx\fontprefix\undefined ! \def\fontprefix{p} \fi % Support font families that don't use the same naming scheme as CM. ! \def\fontencoding{7t} ! \def\rmshape{tmr} ! \def\rmbshape{tmb} %where the normal face is bold ! \def\bfshape{tmb} ! \def\bxshape{tmb} ! \def\ttshape{crr} ! \def\ttbshape{crb} ! \def\ttslshape{crro} ! \def\itshape{tmri} ! \def\itbshape{tmbi} ! \def\slshape{tmro} ! \def\slbshape{tmbo} ! \def\sfshape{hvr} ! \def\sfbshape{hvb} ! \def\scshape{tmrc} ! \def\scbshape{tmbc} ! ! % the reason we save all the \fcur* stuff in \setfont ! % is so we can do some nice symbols: ! ! \def\setcurtextsymbolfont{\def\fontencoding{8r}% ! \expandafter\setfont ! \csname\fontname\font/\fontencoding\endcsname ! \fcurshape\fcursize\fcurscale ! \csname\fontname\font/\fontencoding\endcsname} ! ! \def\copyright{{\setcurtextsymbolfont\char'251}} ! \def\bullet{{\setcurtextsymbolfont\char'225}} ! \ifx\bigger\relax \let\mainmagstep=\magstep1 *************** *** 1052,1059 **** \textfonts % Define these so they can be easily changed for other fonts. ! \def\angleleft{$\langle$} ! \def\angleright{$\rangle$} % Count depth in font-changes, for error checks \newcount\fontdepth \fontdepth=0 --- 1078,1092 ---- \textfonts % Define these so they can be easily changed for other fonts. ! ! \def\setcursymbolfont{\def\fontencoding{}% ! \expandafter\setfont ! \csname\fontname\font/syr\endcsname ! {syr}\fcursize\fcurscale ! \csname\fontname\font/syr\endcsname} ! ! \def\angleleft{{\setcursymbolfont\char'341}} ! \def\angleright{{\setcursymbolfont\char'361}} % Count depth in font-changes, for error checks \newcount\fontdepth \fontdepth=0