Kapitälchen


%!PS-Adobe-1.0
%%Creator: Holger Gehringer
%%Title: Beispiel fuer Kapitaelchen 1
%%CreationDate: Mo, 23.11.1998
%%DocumentMedia: A4 595 842 0 () ()
%%Orientation: Portrait
%%Pages: (atend)
%%DocumentFonts: Times-Roman Helvetica
%%EndComments

% Dieses Programm definiert eine Prozedur zur Ausgabe von Kapitaelchen (engl.:
% small caps), die in der Groesse dem aktuellen Font angepasst sind.

/SCDict 3 dict def            % lokaler Speicher fuer SCShow

/SCShow                       % liest String vom Stack und zeigt ihn in Kapi-
                              % taelchen des aktuellen Fonts. String muss
                              % bereits in Grossbuchstaben sein!
{ SCDict begin
    gsave                     % damit Auswirkungen von makefont lokal bleiben
    currentfont               % aktuellen Font skalieren:
    [.9 0 0 FindSCScale 0 0]  % 90% in x-Richtung; in y-Richtung bestimmt
    makefont setfont          % durch Prozedur FindSCScale
    show                      % String ausgeben
    currentpoint              % aktuellen Punkt sichern, da er sonst durch
    grestore                  % grestore zurueckgesetzt wird -
    moveto                    % gehe zum vorher gesicherten Punkt
  end
} def

%%EndProlog

%%Page: 1 1
SCDict begin
  /FindSCScale                % berechnet Hoehe der Kapitaelchen nach:
                              % x-Hoehe + 1/3 * (Versalhoehe - x-Hoehe)
  { gsave
    newpath
    0 0 moveto
    (X) true charpath         % ermittle Umriss des Buchstabens X
    flattenpath pathbbox      % ersetze alle curveto-Segmente durch lineto-
                              % Segmente (flattenpath) und liefere Bounding-
                              % box, die das Zeichen so dicht wie moeglich
                              % umschliesst (pathbbox).
    /Capheight exch def       % Versalhoehe
    pop pop pop
    newpath
    0 0 moveto
    (x) true charpath         % dieselbe Prozedur zur Ermittlung der x-Hoehe
    flattenpath pathbbox
    /xheight exch def
    pop pop pop
    grestore
    xheight Capheight         % Wert fuer y-Skalierung wird in Prozenten der
    xheight sub 3 div add     % Versalhoehe angegeben und auf stack gelegt.
    Capheight div             % (weil Wert in Prozent von Versalhoehe!)
  } def
end

/Times-Roman findfont 18 scalefont setfont

72 500        moveto (To read means to obtain meaning from words, and) show
72 500 20 sub moveto (THAT QUALITY WHICH) SCShow ( enables words) show
72 500 40 sub moveto (to be read easily, quickly, and accurately.) show
72 500 70 sub moveto (JOHN C. TARR) SCShow

showpage

%%Trailer
%%Pages: 1


Vorschau:

Download PostScript-File

© Holger Gehringer, Dezember 1998