diff -ur tools.orig/finst/fontinst.sty tools/finst/fontinst.sty --- tools.orig/finst/fontinst.sty Tue Oct 28 16:35:00 1997 +++ tools/finst/fontinst.sty Tue May 5 03:59:46 1998 @@ -2054,8 +2054,9 @@ \substitutesilent{b}{bx} \substitutesilent{b}{sb} \substitutesilent{b}{db} +\substitutesilent{m}{mb} % UV added 1998/04/30 \substitutesilent{m}{l} -\substitutesilent{l}{m} +%\substitutesilent{l}{m} % UV: do we need this? % I don't think we want these: oh yes we do (SPQR) % @@ -2284,9 +2285,9 @@ \installfonts \installfamily{T1}{#1}{#2} \installfamily{OT1}{#1}{#2} -% \if_file_exists{ \raw_encoding.mtx }\then -% \installfamily{\raw_encoding}{#1}{#2} -% \fi + \if_file_exists{ \raw_encoding.mtx }\then + \installfamily{\raw_encoding}{#1}{#2} + \fi \latin_weights \endinstallfonts } @@ -2357,8 +2358,9 @@ \gdef\encoding_shape{#3} \gdef\latex_shape{#4} \immediate\write16{INFO>to~make~LaTeX~(family,weight,shape,width)~ - \font_family,\latex_weight,\latex_shape,\latex_width:~seek~\font_family\font_weight - \raw_shape\raw_variant\raw_encoding\font_width} + \font_family,\latex_weight,\latex_shape,\latex_width:~seek~ + \font_family\font_weight\raw_shape + \raw_variant\raw_encoding\font_width} \csname fake_width_\font_width\endcsname \csname fake_shape_\raw_shape\endcsname \if_file_exists{ @@ -2377,11 +2379,16 @@ % places. Also added tests which prevent multiple calls to the same font % faking routine. (Seems to be necessary in some cases and can't hurt.) % -% (ASAJ) I think CK knows more about what he's doing than he's letting -% on... +% (ASAJ) I think CK knows more about what he's doing than he's letting on... +% +% (UV) added another level of complexity: It appears that AFM files generated +% from TrueType fonts with ttf2afm have to be reencoded to 8r directly +% since reencoding them to 8a as usual would mean dropping many glyphs. +% Therefore, we'll have to be prepared to check for 8r-encoded AFM files +% at this place as well. -\def\fake_shape_{ - \if_file_exists{ +\def\fake_shape_{ + \if_file_exists{ \font_family\font_weight\raw_shape\raw_variant \adobe_encoding\font_width.afm }\then @@ -2425,6 +2432,43 @@ %%% End of ligfull installation \fi \fi +%% begin UV: 1998/05/05 +%% copy the whole block from above, replace \raw_encoding +%% for \adobe_encoding and omit the \reencodefont step + \if_file_exists{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width.afm + }\then + \if_file_exists{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width.mtx + }\then % no action required + \else + %%% Do a ligfull installation if possible + \if_file_exists{ \raw_encoding.mtx }\then + \installrawfont{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width + }{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width, + \raw_encoding + }{ + \raw_encoding + }{ + \raw_encoding + }{ + \latex_family + }{ + \latex_weight\latex_width + }{ + \latex_shape + }{} + \fi + %%% End of ligfull installation + \fi + \fi +%% end UV: \if_expert_ \if_file_exists{ \font_family\font_weight\raw_variant\raw_shape @@ -2453,11 +2497,18 @@ }\then \fake_shape_ \else + \if_file_exists{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width.afm + }\then + \fake_shape_ + \else % If real smallcaps font doesn't exist, fake it from the roman. \def\encoding_shape{c} \def\raw_shape{} \fake_shape_ \fi + \fi } \def\fake_shape_o{ @@ -2467,11 +2518,18 @@ }\then \fake_shape_ \else + \if_file_exists{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width.afm + }\then + \fake_shape_ + \else \fake_shape_o_raw_encoding \if_expert_ \fake_shape_o_expert_encoding \fi \fi + \fi } \def\fake_shape_o_expert_encoding{ @@ -2578,11 +2636,17 @@ \adobe_encoding\font_width.afm }\then % no action required \else + \if_file_exists{ + \font_family\font_weight\raw_shape\raw_variant + \raw_encoding\font_width.afm + }\then % no action required + \else \fake_width_n_raw_encoding \if_expert_ \fake_width_n_expert_encoding \fi \fi + \fi \fi } @@ -2729,20 +2793,47 @@ }{} } +%% Fontname 2.1: weight.map NFSS: LaTeX Comapion, p. 190 +%% +%% a Thin Hairline ul Ultra Light +%% j ExtraLight el Extra Light +%% l Light l Light +%% r Regular Roman m Medium (normal) +%% k Book m +%% m Medium m (mb, as per UV) +%% d Demi sb (db, as per SPQR) +%% s Semibold sb Semi Bold +%% b Bold b Bold +%% h Heavy Heavyface eb +%% c Black eb +%% x ExtraBold ExtraBlack eb Extra Bold +%% u Ultra UltraBlack ub Ultra Bold +%% p Poster + + % The standard values. These may be changed, but you'd better know % what you're doing. +% UV: Changes 1998/04/30 +% +% Changed the processing order: Do the most common shapes first. +% Added new mappings for `c' (Black) and `h' (Heavy) to `eb', +% changed mapping for `m' (Medium) to newly invented shape `mb'. + \def\latin_weights{ + \latin_weight{r}{m} + \latin_weight{k}{m} \latin_weight{b}{b} - \latin_weight{d}{db} %SPQR was {d}{sb} - \latin_weight{i}{el} - \latin_weight{l}{l} \latin_weight{s}{sb} - \latin_weight{k}{m} - \latin_weight{m}{m} - \latin_weight{r}{m} + \latin_weight{d}{db} % SPQR was {d}{sb} + \latin_weight{m}{mb} % UV was {m}{m} + \latin_weight{c}{eb} % UV added + \latin_weight{h}{eb} % UV added \latin_weight{x}{eb} \latin_weight{u}{ub} + \latin_weight{l}{l} + \latin_weight{i}{el} % UV should this be `j'? + \latin_weight{a}{ul} % UV added } \def\latin_widths{ @@ -2750,7 +2841,7 @@ \latin_width{n}{c} } -\def\latin_shapes{ +\def\latin_shapes{ \latin_shape{} {} {} {n} \latin_shape{c}{c}{} {sc} \latin_shape{o}{o}{} {sl} diff -ur tools.orig/finst/textcomp.tex tools/finst/textcomp.tex --- tools.orig/finst/textcomp.tex Wed Jul 9 15:20:00 1997 +++ tools/finst/textcomp.tex Fri May 1 02:56:36 1998 @@ -65,22 +65,27 @@ \textcomp_widths } +% UV 1998/05/01: made consistent with fontinst.sty \def\textcomp_weights{ - \textcomp_weight{b}{b} + \textcomp_weight{r}{m} + \textcomp_weight{k}{m} + \textcomp_weight{b}{b} + \textcomp_weight{s}{sb} \textcomp_weight{d}{db} + \textcomp_weight{m}{mb} + \textcomp_weight{c}{eb} + \textcomp_weight{h}{eb} + \textcomp_weight{x}{eb} + \textcomp_weight{u}{ub} + \textcomp_weight{l}{l} \textcomp_weight{i}{el} - \textcomp_weight{l}{l} - \textcomp_weight{s}{sb} - \textcomp_weight{k}{m} - \textcomp_weight{m}{m} - \textcomp_weight{r}{m} - \textcomp_weight{x}{eb} - \textcomp_weight{u}{ub} + \textcomp_weight{a}{ul} } +% UV 1998/05/01: made consistent with fontinst.sty \def\textcomp_widths{ \textcomp_width{}{} - \textcomp_width{c}{sc} + \textcomp_width{n}{c} % was {c}{sc} ??? } \def\textcomp_shapes{