From mboxrd@z Thu Jan 1 00:00:00 1970 X-Msuck: nntp://news.gmane.io/gmane.comp.tex.context/5235 Path: main.gmane.org!not-for-mail From: siep@elvenkind.com Newsgroups: gmane.comp.tex.context Subject: Re: fonts / proposal Date: Wed, 8 Aug 2001 11:34:05 +0200 (CEST) Sender: owner-ntg-context@let.uu.nl Message-ID: <200108081029.MAA03257@plane.elvenkind.com> References: <3B6FA974.7DBA7E50@elvenkind.com> Reply-To: siep@elvenkind.com NNTP-Posting-Host: coloc-standby.netfonds.no Mime-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii X-Trace: main.gmane.org 1035395838 32385 80.91.224.250 (23 Oct 2002 17:57:18 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Wed, 23 Oct 2002 17:57:18 +0000 (UTC) Original-To: ntg-context@ntg.nl In-Reply-To: <3B6FA974.7DBA7E50@elvenkind.com> Xref: main.gmane.org gmane.comp.tex.context:5235 X-Report-Spam: http://spam.gmane.org/gmane.comp.tex.context:5235 Let's try to summarize a few things. dvips reads psfonts.map to find the PostScript font for a given tfm, plus any transformations that have to be applied to that file. You can have as many tfms as you like for one PostScript font. For this, you can simply add a bunch of (Context) tfm-s to an existing psfonts.map and since the new tfm names are different from existing tfm names, it won't upset existing usage. The tricky part is reverse lookup. I understand from Taco that this occurs when a to-be-included epsfile needs fonts. Here, additional mapfile entries can cause problems. I am not familiar with the details. However, offhand I would say that for reverse lookup only the PostScript fontname and the filename would be used, and that there should be no problems as long as all entries referring to the same PostScript fontname also refer to the same pfb. It shouldn't be that hard to write a script which validates and corrects mapfiles for this. The point of all this is that it should be possible to stuff everything you need in your default psfonts.map. Also a word about fontinst. If you read the documentation then it is very LaTeX-centric. I believe however that this is mainly true for the top-level commands. I created three testfonts with fontinst, all based on Helvetica Light, with the following input file: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \input fontinst.sty \transformfont{phvl8r}{\reencodefont{8r}{\fromafm{phvl8a}}} \transformfont{transhv}{\reencodefont{8y}{\fromafm{phvl8a}}} \installfonts \installrawfont{installhv}{phvl8a,latin}{8y} {}{}{}{}{} \installfont{virthv}{phvl8r,latin,8r}{T1} {}{}{}{}{} \endinstallfonts \bye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% As you see, you can name fonts whatever you like, and you can set the LaTeX-specific parameters to null values; these would only be needed for creating font families and fd files I think. These are the mapfile entries: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% transhv Helvetica-Light "TeXnANSIEncoding ReEncodeFont " transhv}{} \DeclareFontFamily{LY1}{installhv}{} \DeclareFontShape{LY1}{installhv}{m}{n}{<->installhv}{} \DeclareFontFamily{T1}{virthv}{} \DeclareFontShape{T1}{virthv}{m}{n}{<->virthv}{} \begin{document} \fontencoding{LY1}\fontfamily{transhv}\selectfont Font generated with transformfont (non-virtual, no kerning, texnansi) German sz in wrong slot AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \ss \char223\par~\par \fontencoding{LY1}\fontfamily{installhv}\selectfont Font generated with installrawfont (non-virtual, generic kerning, texnansi) German sz in wrong slot AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \ss \char223\par~\par \fontencoding{T1}\fontfamily{virthv}\selectfont Font generated with installfont (virtual, generic kerning, T1) AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \ss\par~\par \end{document} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% A Context testfile (contributed by Taco): %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \definefontsynonym[Atranshv][transhv][encoding=texnansi] \definefontsynonym[Ainstallhv][installhv][encoding=texnansi] \definefontsynonym[Avirthv][virthv][encoding=ec] \definebodyfont [14.4pt,12pt,11pt,10pt,9pt,8pt,7pt,6pt,5pt] [rm] [bi=Atranshv sa 1, bf=Ainstallhv sa 1, it=Avirthv sa 1] \switchtobodyfont[10pt] \starttext Font generated with transformfont (non-virtual, no kerning, texnansi) {\bi AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \sz \par~\par} Font generated with installrawfont (non-virtual, generic kerning, texnansi) {\bf AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \sz \par~\par} Font generated with installfont (virtual, generic kerning, T1) {\it AT fi fl `A\relax T' A\kern0pt T \'el\`eve co\"\i tus \sz\par~\par} \stoptext %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% You can find pdfs of the testfiles at www.cybercomm.nl/~siepo/. Siep