[Tustep-Liste] Kapitälchen bei benutzereigenem Schriftsatz einschalten

Wilhelm Ott zrlot01 at uni-tuebingen.de
So Okt 2 16:49:37 CEST 2022


Lieber Herr Gantenbein,

mit reichlich Verspätung hier eine Antwort auf Ihre Frage, wie Sie
bei der von Ihnen verwendete Schrift EB Garamond die Kapitälchen
für #SATZ und Umgebung zugänglich machen können.

Sie haben für die Kapitälchen den Font EBGaramond12-SC gewählt,
in dem die Kapitälchen an den Adressen ("octal character code")
und mit den Namen stehen, die sonst für die Kleinbuchstaben gelten.

Wenn nichts anderes angegeben ist, setzt #*PSFONT wegen
MODUS=-STD- voraus, dass dem AFM-File des Fonts, aus dem
die Dicktentabelle für das Satzprogramm erstellt werden soll, der
Adobe Standard Encoding Vector zugrunde liegt, bei dem z. B. auf
der Adresse 97 = oktal 141  bei einer lateinischen Schrift der
Kleinbuchstabe a mit dem Namen "a" steht.

Für Kapitälchenschriften wird jedoch der Expert Encoding Vector
erwartet, bei dem sich auf der Adresse oktal 141 das Kapitälchen-a
mit dem Namen "Asmall" oder "a.sc" findet. Wenn dies - wie im Fall
von EBGaramond12-SC - nicht der Fall ist (dort heißt das
Kapitälchen-a nur "a"), kann man dies mit der Angabe SEV (für
Standard Encoding Vector) angeben.

Wenn in dem Ihrer mail beigefügten Programm garadef.tu in Zeile 22
hinter die 49024 noch ein ", mo=SEV" angefügt wird, sollten in
gara.def auch die Dicktenwerte für die Kapitälchen eingefügt werden
und die Blockaden in der PS-Ausgabe verschwinden.

----

Normalerweise wird man heute jedoch kaum mehr eigene Fonts
für die Kapitälchen vorfinden, da sich diese in den selben Fonts
finden wie die Grundbuchstaben; wie Sie selbst in Ihrer mail
schreiben, können Sie ja mit
    mac       <e21/>&!(#U49021\e.sc\480)
aus der normalen EBGaramond "die Kapitälchen ...  hervorlocken".

Dieses "Hervorlocken" kann man auch für #*PSFONT tun, und zwar,
wie Sie es ebenfalls versucht haben, mit #*PSFONTVOR und
der Spezifikationsangabe ZEICHENSATZ = KAP.

In garadef.tu könnte man zu diesem Zweck die Zeilen 21-22 ersetzen
durch:

    #da,afm1sc,seq-ap
    #*psfontvor,afm1,afm1sc,+,kap
    #*psfont,afm1sc,gara.def, num=49024

Im Fall der EBGaramond funktioniert es trotzdem nicht, weil
wie Sie selbst schon in ihrer Mail angemerkt haben, dieser
Font mehrfach identische Glyphen mit unterschiedlichen Namen
enthält, so z.B. die Kapitälchen als A.sc und als a.sc etc.,
worüber sich, wie Sie schreiben, ^#*PFONT prompt beschwert.

In #*PSFONTVOR waren solche Fälle noch nicht berücksichtigt:
bisher sind mir solche Fonts noch nicht begegnet.

Deshalb müssen, bis es eine verbesserte Version von #*PSFONTVOR gibt,
soche überflüssigen Einträge aus der .afm-Datei (bzw. einer Kopie
davon) entfernt werden, bevor #*PSFONTVOR aufgerufen wird.
In den drei oben genannten Zeilen muss also die Zeile mit dem
Makro-Aufruf von #*psfontvor ersetzt werden durch:

     #da,afm1.kor,fr=-
     #um,afm1,-std-,0,+,co=bin
     #ko,-std-,afm1.kor,,+,*
     zf-       ~ N {\A}.sc ~
     zf-       ~ N {\A}{00}{&a}.sc ~
     zf-       ~ N uniFB{\0}{\0} ~
     *eof
     #*psfontvor,afm1.kor,afm1sc,+,kap

(das ist wohl weniger Arbeit als die doppelten Einträge von Hand
zu löschen).

Einen Unterschied im Satz-Ergebnis werden Sie feststellen: dort
trinken die Toren nicht TEE (mit Kapitälchen) wie im obigen Beispiel,
sondern normale Tee: das Zeichen, das mit &!(#U49024\e\480)
angesteuert wird, ist jetzt kein Kapitälchen-E, sondern der
Kleinbuchstabe e.

Mit den besten Wünschen und Grüßen

Wilhelm Ott

----------------------------------------------------------------------
Prof. Dr. Wilhelm Ott 	            phone:  +49-7071-987656
c/o pagina GmbH                     fax:    +49-7071-987622
Herrenberger Straße 51              e-mail: wilhelm.ott at uni-tuebingen.de
D-72070 Tübingen


On Tue, 20 Sep 2022, Urs Leo Gantenbein wrote:

> Date: Tue, 20 Sep 2022 20:00:56 +0200
> From: Urs Leo Gantenbein <ursleo.gantenbein at paracelsus-project.org>
> Reply-To: Mailingliste zum Thema TUSTEP <tustep-liste at itug.de>
> To: tustep-list <tustep-liste at itug.de>
> Subject: [Tustep-Liste] Kapitälchen bei benutzereigenem Schriftsatz
>     einschalten
> 
> Liebe TUSTEP-Liste,
>
> auf der Suche nach einer guten Garamond-Schrift für TUSTEP bin ich auf die 
> interessante Realisation *EB Garamond* gestoßen. Dieses sog. 
> Egenolff-Berner-Specimen von 1592 wurde von Georg Duffner nachgezeichnet und 
> von Google weiterentwickelt. Die kostenlosen Fonts verfügen über einen 
> umfangreichen Zeichensatz mit Kerning-Angaben und sind hier erhältlich:
>
> https://fonts.google.com/specimen/EB+Garamond
> https://www.1001fonts.com/eb-garamond-font.html (hier mit einer gesonderten 
> Kapitälchenschrift)
>
> Es ist mir gelungen, EB Garamond zu integrieren. Weitere Angaben zum Vorgehen 
> finden sich im TUSTEP-Wiki:
> https://wiki.itug.de/doku.php?id=tustep:loesungen:satz_mit_modul_satz:schriften
>
> *Einzig die Kapitälchen lassen sich nicht einschalten*, und aus diesem Grund 
> wende ich mich an die Liste. Zunächst gilt es bei benutzereigenen Fonts, die 
> Datei *gara.def* zu erstellen, die für #SATZ und #*PSAUS aus den 
> *.afm-Dateien die notwendigen Schriftinformationen zusammenstellt. Diese 
> Definitionsdatei muss über den Parameter SCHRIFTEN angegeben werden
>
> Inhalt der TUE-Datei *garadef.tu*:
>
>> # - Erstellt Fontdefinitionen
>> # - =========================
>> # de,va=*
>>  fafm1=C:\psfonts\EBGaramond-Regular.afm
>>  fafm2=C:\psfonts\EBGaramond-Italic.afm
>>  fafm3=C:\psfonts\EBGaramond-SemiBold.afm
>>  fafm4=C:\psfonts\EBGaramond12-SC.afm
>>  fafm5=C:\psfonts\EBGaramond-SemiBoldItalic.afm
>>  *eof
>> 
>> # da,*gara.def*,seq-ap
>> # lo,gara.def
>> # da,afm1'afm2'afm3'afm4'afm5,fdf-ap
>> 
>> # *upload,<fafm1>,afm1,lo=+,me=-
>> # *psfont,afm1,gara.def,num=49021
>> # *upload,<fafm2>,afm2,lo=+,me=-
>> # *psfont,afm2,gara.def,num=49022
>> # *upload,<fafm3>,afm3,lo=+,me=-
>> # *psfont,afm3,gara.def,num=49023
>> # *upload,<fafm4>,afm4,lo=+,me=-
>> # *psfont,afm4,gara.def,num=49024
>> # *upload,<fafm5>,afm5,lo=+,me=-
>> # *psfont,afm5,gara.def,num=49025
>>
>>  #lo,,afm1'afm2'afm3'afm4'afm5
>
> Der Grundschrift gab ich hier die Nummer 49021. Entsprechend werden die 
> Schrägschrift (49022), die Halbfettschrift (49023), die Kapitälchen (49024) 
> und die halbfette Schrägschrift (49025) mit Nummern versehen.
>
> Der erste Teil der Satzroutine *gara.sa* sieht wie folgt aus. Die 
> Kapitälchenschrift 49024 muss im dritten Umschaltbereich liegen. Die 
> halbfette Schrägschrift habe ich auf den sechsten Umschaltbereich gelegt:
>
>> # an,gara.tf'gara.def
>> # da,ziel'prot'aus,fr=-
>>
>>  #sa,gara.tf,ziel,t,+,*,aus,prot,*sch=gara.def*
>>  abb       999999
>>  sch       49021 49022 49024 49023 31901 49025
>>  gro       10,5+2 9+1  8,5//10 10,5+2 12+2 10+3 8,5+2 8,5+2
>>  bre       299
>>  hoe       480  1  0  0  3
>>  sei       1  -2
>>  mon       1  0  299  56  56
>>  aus       0  0  0  1/10  1/3  1
>>  sil       10  1/6  1/12  5  2  2
>>  $         0  3/2  -10.
>> && &       0  2!  0  0  20
>> &&         2  1  0   2   8
>> &          2  1  0   1   5
>>  mac       <pp>$$$
>>  mac       </pp>
>>  mac       <bz/>$$$=$$$
>>  mac       <i>#/+
>>  mac       </i>#/-
>>  mac       <b>#f+
>>  mac       </b>#f-
>>  mac       <c>#k+
>>  mac       </c>#k-
>>  mac       <e21/>&!(#U49021\e.sc\480)
>>  mac       <n21/>&!(#U49021\n.sc\605)
>>  mac       <o21/>&!(#U49021\o.sc\616)
>>  mac       <r21/>&!(#U49021\r.sc\540)
>>  mac       <e24/>&!(#U49024\e\480)
>>  *eof
>> 
>> # da,temp.ps'gara.ps'gara.pdf,fdf-ap
>> # *psaus,aus,1-1,100,-9+166,lo=+,ko=-,da=temp.ps,op=a4,*sch=gara.def*
>
> Weiter müssen die neuen Schriften auch Ghostscript bekannt gemacht werden. 
> Leider genügt es in meinem Fall mit Ghostscript 9.10 nicht, wenn ich (via 
> GhostView) in den erweiterten Optionen meinen Fontpfad C:\psfonts\ sowohl bei 
> den /Options /wie auch beim /Include Path/ angebe. Deshalb kopiere ich die 
> *.pfa-Schriften, wie von Herrn Ott empfohlen, vor die von #*PSAUS ausgegebene 
> Postscriptdatei temp.ps:
>
> Zweiter Teil der Satzroutine *gara.sa*:
>
>> # - Fonts vor temp.ps kopieren:
>> # - ---------------------------
>> # makro
>>  $$ mode TUSCRIPT, {}
>>  fpfa1 = "C:\psfonts\EBGaramond-Regular.pfa"
>>  define fpfa1
>>  fpfa2 = "C:\psfonts\EBGaramond-Italic.pfa"
>>  define fpfa2
>>  fpfa3 = "C:\psfonts\EBGaramond-SemiBold.pfa"
>>  define fpfa3
>>  fpfa4 = "C:\psfonts\EBGaramond12-SC.pfa"
>>  define fpfa4
>>  fpfa5 = "C:\psfonts\EBGaramond-SemiBoldItalic.pfa"
>>  define fpfa5
>>  source = full_name (TUSTEP,"temp.ps")
>>  dest = full_name (TUSTEP,"gara.ps")
>>  execute "copy {fpfa1}+{fpfa2}+{fpfa3}+{fpfa4}+{fpfa5}+{source} {dest}"
>>  *eof
>>  #lo,,temp.ps
>> 
>> # *ps2pdf,gara.ps,gara.pdf,br=415,ho=615
>> # *zepdf,gara.pdf 
>
> Mit dieser Satzroutine möchte ich jetzt den folgenden Beispieltext *gara.tf* 
> setzen:
>
>>  <pp>Ich <i>wusste wohl</i>, mein ++Brutus++{,
>>  dass, als ich das, was die geistreichsten und gelehrtesten
>>  Philosophen in <b>griechischer Sprache</b> behandelt hatten, in
>>  lateinischer wiedergab, meine Arbeit mancherlei Tadel finden würde.</pp>
>>  <bz/>
>>  <pp>Die <c>Tadler</c> und die T<o21/><r21/><e21/><n21/>
>>  trinken T<e24/><e24/>.</pp>
>>  <bz/>
>>  <pp>""Da steh' ich nun, ich armer Tor,</pp>
>>  <pp>Und bin so klug als wie zuvor!""{</pp>
>
> Hier versuche ich, die Kapitälchen sowohl über den dritten Umschaltbereich ++ 
> ... ++{ wie auch über die Makros <c>#k+ ... </c>#k- anzusprechen, leider 
> beide Male ohne Erfolg. Die Kapitälchen lassen sich trotzdem hervorlocken, 
> wenn man sie direkt als Zeichen mit &!(#Ummmmm\zeichenname\dickte) einsetzt, 
> sowohl aus der Kapitälchenschrift 49024 wie auch aus der Grundschrift 49021, 
> die in diesem Fall die Kapitälchen mit der Namensendung *.sc bereits enthält. 
> Die halbfette Schrägschrift hingegen lässt sich über den sechsten Umschalt 
> bereich "" ... ""{ bestens anwenden:
>
>
> Woran liegt das wohl? Hat EBGaramond12-SC.pfa ein falsches Format? An der 
> Stelle der Kleinbuchstaben a, b, c, ... stehen die entsprechenden 
> Kapitälchen. Ich habe die verschiedensten Sachen ausprobiert, zum Beispiel 
> ein K in Klammern hinter die Fontnummern gesetzt usw. Auch habe ich versucht, 
> mit #*PSFONTVOR und dem Parameter ze=kap die Kapitälchen aus der Grundschrift 
> EBGaramond-Regular.pfa, welche ja echte Kapitälchen enthält, zu extrahieren 
> und eine entsprechende *.afm-Datei zu erstellen:
>
>>  #de,va=*
>>  fafm1=C:\psfonts\EBGaramond-Regular.afm
>>  *eof
>> 
>> # da,afm1'afm2,fdf-ap
>> # da,sc,fr=-
>> 
>> # *upload,<fafm1>,afm1,lo=+,me=-
>> # *psfontvor,afm1,sc,lo=+,ze=kap
>> # um,sc,afm2,mo=-1,co=ascii,nl=win,lo=+
>> # *download,afm2,C:\psfonts\EBGaramond-SmallCaps.afm,lo=+,me=-
>>
>>  #lo,,afm1'afm2 
>
> Aber dann wusste ich nicht, was ich mit der neuen *.afm-Datei anfangen 
> sollte. Zudem enthielt sie doppelte Namenseinträge, was von #*PSFONT prompt 
> beanstandet wurde. Vielleicht müssten die doppelten Einträge von Hand 
> gelöscht werden.
>
> Ich möchte mich für den langen Eintrag entschuldigen, aber die Sache ist 
> komplex und ich wollte sie möglichst genau darstellen. Wenn Interesse an 
> meinen Fontdateien besteht, können sie hier heruntergeladen werden (5,4 MB):
> https://www.paracelsus-project.org/docs/garafonts.zip
>
>
> Mit vielem Dank voraus und besten Grüßen
>
> Urs Leo Gantenbein
>
>
> ---
> *Urs Leo Gantenbein, Dr. med. M. Sc. ETH*
> Project Leader of the Zurich Paracelsus Project, University of Zurich
> Ackeretstrasse 16, CH-8400 Winterthur, SWITZERLAND
> www.paracelsus.uzh.ch <https://www.paracelsus.uzh.ch/>
>
> Research Affiliate:
> Paleopathology and Mummy Studies Group
> Institute of Evolutionary Medicine, University of Zurich
> www.iem.uzh.ch <https://www.iem.uzh.ch/>
> Institute of Swiss Reformation History, University of Zurich
> www.irg.uzh.ch <https://www.irg.uzh.ch/>
>


Mehr Informationen über die Mailingliste Tustep-Liste