On Wed, 19 Mar 2003 14:58:48 +0100
Patrick Gundlach <[EMAIL PROTECTED]> wrote:

> Jens-Uwe Morawski <[EMAIL PROTECTED]> writes:
> 
> Hello Jens and others,
> 
> > some time ago Hans and me discussed how to make TS1 symbols available.
> > I've never tried it but it sounds interesting since it is an unified
> > way to access the symbols. For example for Palatino
> >
> >
> > add to the typescripts
> >
> > \definefontsynonym [PalatinoSymbols] [<TS1-Font>]
> > \definefontsynonym [PalatinoSymbolsBold] [<TS1-Bold-Font>]
> >
> > \definefontsynonym [SerifSymbols] [PalatinoSymbols]
> > \definefontsynonym [SerifSymbolsBold] [PalatinoSymbolsBold]
> >
> > and define the symbols in a symbol-typescript
> >
> > \definesymbol[textregistered] [{\symbol[\currentencoding-registered]}]
> > \definesymbol[ec-registered][\getglygh{SerifSymbols}{\char123}]
> >
> > this could add the capability that the LaTeX textcomp package provides
> 
> At a quick glance this would fail for example for the euro
> sign/ec. (Not there in ec). Why not access the existing virtual fonts
> or generate new ones if needed? (phvr8c.vf for example - let us not
> fall back to the urw/adobe discussion yet :) 

your glance was too quick. :) The chain is:

starting with texteuro symbol -->
if in ec-encoding it becomes ec-texteuro symbol -->
it takes char 0xBF from the current ...Symbol... font
 (the symbol macro should be able to resolve Serif.., Sans..., Serif...Bold etc
  automatically) -->
the current ...Symbol... font is *NOT* a EC-encoded font but a TS1 (aka 8c)
encoded one that is associated via typescript with the T1 encoded font
(as i have already written above: <TS1-Font>)

This would easily allow for other text encodings to define the usual
symbols, for example for 8r one can declare either

\definesymbol[8r-texteuro][\getglygh{Serif}{\char128}]

or better
\definefontsynonym [SerifSymbols] [Serif]
\definesymbol[8r-texteuro][\getglygh{SerifSymbols}{\char128}]

since in 8r or texnansi there are no special symbol fonts. Thus, when
you switch the encoding in your document from ec to 8r to texnansi
then the euro is from the users view always the symbol texteuro, but
for ec taken from the associated 8c-font and for 8r or texnansi
taken directly from the text-font.

So, we should look if the macro-names from textcomp package conflict
with macro-names already defined in ConTeXT. If there is no conflict
we can define all text-symbols according to 'textcomp' in some
typescripts:

\starttypescript[textsymbols]
  ...
  \definesymbol[texteuro] [{\symbol[\currentencoding-texteuro]}]
  ...
\stoptypescript

\starttypescript[textsymbols][ec]
  ...
  \definesymbol[ec-texteuro] [\getglygh{Textsymbol}{\char191}]
  ...
\stoptypescript

\starttypescript[textsymbols][8r]
  ...
  \definesymbol[8r-texteuro] [\getglygh{Textsymbol}{\char128}]
  ...
\stoptypescript


the font typescripts then have to declare what 'Textsymbol' is:

\starttypescript [serif] [Adobe Times] [name]
  \definefontsynonym [Serif]            [Times-Roman]
  \definefontsynonym [SerifBold]        [Times-Bold]
  \definefontsynonym [SerifItalic]      [Times-Italic]
  \definefontsynonym [SerifSlanted]     [Times-Italic]
  \definefontsynonym [SerifBoldItalic]  [Times-BoldItalic]
  \definefontsynonym [SerifBoldSlanted] [Times-BoldItalic]
  \definefontsynonym [SerifCaps]        [Times-Roman]
  \definefontsynonym [TextsymbolSerif]            [TextsymbolTimes-Roman]
  \definefontsynonym [TextsymbolSerifBold]        [TextsymbolTimes-Bold]
  \definefontsynonym [TextsymbolSerifItalic]      [TextsymbolTimes-Italic]
  \definefontsynonym [TextsymbolSerifSlanted]     [TextsymbolTimes-Italic]
  \definefontsynonym [TextsymbolSerifBoldItalic]  [TextsymbolTimes-BoldItalic]
  \definefontsynonym [TextsymbolSerifBoldSlanted] [TextsymbolTimes-BoldItalic]
  \definefontsynonym [TextsymbolSerifCaps]        [TextsymbolTimes-Roman]
\stoptypescript

\starttypescript [serif] [Adobe Times] [ec]
  \definefontsynonym [Times-Roman]                [ptmr8t]  [encoding=ec]
  \definefontsynonym [Times-Bold]                 [ptmb8t]  [encoding=ec]
  \definefontsynonym [Times-Italic]               [ptmri8t] [encoding=ec]
  \definefontsynonym [Times-BoldItalic]           [ptmbi8t] [encoding=ec]
  \definefontsynonym [TextsymbolTimes-Roman]      [ptmr8c]
  \definefontsynonym [TextsymbolTimes-Bold]       [ptmb8c]
  \definefontsynonym [TextsymbolTimes-Italic]     [ptmri8c]
  \definefontsynonym [TextsymbolTimes-BoldItalic] [ptmbi8c]
\stoptypescript
% the encoding=?? is only needed for mapping input; since we access symbols
% directly (\char...) the encoding for 'Textsymbol' fonts should not be important


\starttypescript [serif] [Adobe Times] [8r]
  \definefontsynonym [Times-Roman]                [ptmr8r]  [encoding=8r]
  \definefontsynonym [Times-Bold]                 [ptmb8r]  [encoding=8r]
  \definefontsynonym [Times-Italic]               [ptmri8r] [encoding=8r]
  \definefontsynonym [Times-BoldItalic]           [ptmbi8r] [encoding=8r]
  \definefontsynonym [TextsymbolTimes-Roman]      [ptmr8r]  [encoding=8r]
  \definefontsynonym [TextsymbolTimes-Bold]       [ptmb8r]  [encoding=8r]
  \definefontsynonym [TextsymbolTimes-Italic]     [ptmri8r] [encoding=8r]
  \definefontsynonym [TextsymbolTimes-BoldItalic] [ptmbi8r] [encoding=8r]
\stoptypescript


Jens
_______________________________________________
ntg-context mailing list
[EMAIL PROTECTED]
http://www.ntg.nl/mailman/listinfo/ntg-context

Reply via email to