Re: [Tustep-Liste] PS1-Font über 255 Zeichen?

Wilhelm Ott wilhelm.ott at zdv.uni-tuebingen.de
Mi Jan 26 10:41:37 CET 2005


Lieber Herr Brunschön,

> wie viele Zeichen darf ein PS-Type1-Font enthalten,
> damit TUSTEP keine Probleme macht? Konkret soll ein
> griechischer Unicode-TT-Font nach PS konvertiert
> werden, und da reichen ja bekanntlich 255 Zeichen
> nicht aus. Für Tips und Anregungen bin ich wie im-
> mer dankbar.

lieber Herr Trauth,

> Machen Sie zwei oder noch mehr Fonts mit 1-Byte-Adres-
> sierung draus, und adressieren Sie die Zeichen, indem
> Sie mit Hilfe eines in Ihre Satzprozedur zwischenge-
> schalteten #kopiere die Einzelzeichen in den Direkt-
> aufruf &!(##nnn/mmm) austauschen. Das hoert sich kom-
> plizierter an, als es ist. Den ersten Teil der Aufgabe
> erledigen Sie mit einem guten Fonteditor, ...
...
> Ich teile Ihr Bedauern darueber, dass dieser Zwischen-
> schritt noetig ist, aber solange TUSTEP die 1-Byte-
> Adressierung verwendet, ist er wohl unvermeidlich.

nur zur Klarstellung:

Es liegt nicht an TUSTEP, dass in Type-1-Fonts nur 256 Zeichen
angesprochen werden können.

Ich zitiere aus der "PostScript- und PDF-Bibel" von Thomas Merz, S. 188:

  "Der Zeichenvorrat eines Type-1-Fonts kann beliebig groß sein,
   allerdings sind immer nur 256 Zeichen davon gleichzeitig benutzbar,
   denn Type-1-Fonts stützen sich vollständig auf eine 8-Bit-Architektur
   und unterliegen damit unweigerlich deren Einschränkungen".

Bei Adobe, dem "Erfinder" von PostScript, liest sich das so
(PostScritpt Language Reference, third edition):

  "Font definitions use a flexible encoding scheme by which character
   codes select glyph descriptions. The association between character
   codes and glyph descriptions is ... described by a separate encoding
   vector. ...
   The encoding vector is defined by the array object that is the value
   of the Encoding entry in the font dictionary. The array is indexed
   by character code (an integer in the range 0 to 255). ...
   The operand to the show operator is a PostScript string object.
   Each element of the string is treated as a character code." (S. 328 f.)

TUSTEP wird also in PostScript-Dateien notwendigerweise auch weiterhin
die 1-Byte-Adressierung verwenden. Denn die ist von PostScript vorgegeben.

Der Operator glyphshow, mit dem (jeweils nur ein einzelnes) Zeichen über
den Zeichennamen statt über den Zeichencode ausgewählt werden kann, ist
im übrigen erst seit PostScript Version 2 verfügbar.

Die Methode, die Michael Trauth vorschlägt, um Fonts mit mehr
als 256 Zeichen dem Satzprogramm zugänglich zu machen, ist
also die Methode der Wahl.
(TUSTEP arbeitet intern übrigens für die beiden Arabisch-Fonts
genau so: unter den Font-Nummern 31001 bzw. 31003 werden intern
jeweils drei Fonts angesprochen (cf. TUSTEP-Handbuch S. 904), um die
Zeichen bzw. Ligaturen auszuwählen. Die Aufteilung auf je drei
Type-1-Fonts hat bereits der Hersteller (Monotype) vorgenommen.)

Mit den besten Grüßen
W. Ott
----------------------------------------------------------------------
Prof. Dr. Wilhelm Ott               phone: +49-7071-2970307
Universitaet Tuebingen              fax:   +49-7071-295912
c/o Zentrum fuer Datenverarbeitung  e-mail: wilhelm.ott at uni-tuebingen.de
Waechterstrasse 76
D-72074 Tuebingen



On Tue, 25 Jan 2005, Michael Trauth wrote:

> Date: Tue, 25 Jan 2005 18:42:46 +0100
> From: Michael Trauth <trauth at uni-trier.de>
> Reply-To: tustep-liste at itug.de
> To: tustep-liste at itug.de
> Subject: Re: [Tustep-Liste]  PS1-Font über 255 Zeichen?
>


Mehr Informationen über die Mailingliste Tustep-Liste