Sie sind hier

Schriften stufenlos skalieren

Hallo,

ich möchte gerne für ein Buch im Format 17x24 eine Standard-Schriftgröße zwischen 10 und 11pt einstellen, z.B. 10,5pt. Geht das im KOMA Script, wenn ja, wie? Setze ich eine nicht-Standard-Größe wie 10.5 in der scrbook document class Definition, setzt er es auf die nächstgrößere, hier 11pt. Erzeuge ich eine neue Schrift/kann man das mit einem package skalieren wie Helvetica?

Leiden die Proportionen im Schriftbild unter einer solchen Einstellung?

Noch eine naive Frage, welche Schrifttypen, wie metafont, ps, ttf etc. verwendet denn KOMA Script standardmäßig mit scrbook, wo sehe ich das?

Vielen Dank und beste Grüße!

Garibaldi

Bild von Markus Kohm

KOMA-Script ändert nichts an der Fonteinbindung und hat auch keine eigenen Fonts. Werden also keine Font-Pakete geladen, wird beim OT1-Encoding (Voreinstellung von LaTeX) CM und beim T1-Encoding EC verwendet. Man kann auch ganz normal Font-Pakete wie lmmodern (für LM) verwenden.

LaTeX verwendet normalerweise bei EC und CM nur diskrete Größen. Näheres dazu und wie man das ändert, ist dem Thread »cmtt: Nur in diskreten Größen??« im Usenet zu entnehmen. In jenem Thread erzähle ich auch etwas über die zugehörige Typografie.

Für eine neue Grundschriftgröße ist allerdings zusätzlich eine neue sizeXX.clo-Datei von Nöten (oder eine Wrapperklasse), in der alle Schriftgrößen neu eingestellt werden.

Hallo Markus,

vielen Dank für Deine schnelle Antwort. Ich habe jetzt fix-cm installiert und versucht, die clo-Dateien zu verstehen, dafür mit der bkXX.clo Datei gespielt. Wenn ich z.B. die Schriftgröße zum Testen auf 42 setze, beschwert er sich, dass file bk42.clo fehlt. Ich habe also die bk10.clo kopiert und bk42.clo genannt, dann verhält sich Schriftgröße 42 genauso wie 10pt, ich hoffe also, auf der richtigen Fährte zu sein. Vermutlich ist der folgende Absatz entscheidend:

\ProvidesFile{bk10.clo}
[2001/04/21 v1.4e
Standard LaTeX file (size option)]
\renewcommand\normalsize{%
\@setfontsize\normalsize\@xpt\@xiipt
\abovedisplayskip 10\p@ \@plus2\p@ \@minus5\p@
\abovedisplayshortskip \z@ \@plus3\p@
\belowdisplayshortskip 6\p@ \@plus3\p@ \@minus3\p@
\belowdisplayskip \abovedisplayskip
\let\@listi\@listI}
\normalsize

Zum Vergleich, der nächste für small sieht so aus:

\newcommand\small{%
\@setfontsize\small\@ixpt{11}%
\abovedisplayskip 8.5\p@ \@plus3\p@ \@minus4\p@
\abovedisplayshortskip \z@ \@plus2\p@
\belowdisplayshortskip 4\p@ \@plus2\p@ \@minus2\p@
\def\@listi{\leftmargin\leftmargini
\topsep 4\p@ \@plus2\p@ \@minus2\p@
\parsep 2\p@ \@plus\p@ \@minus\p@
\itemsep \parsep}%
\belowdisplayskip \abovedisplayskip
}

Wie muss ich den definieren, dass normalsize 10.5pt ist? Was bedeuten @xpt, @xipt, @ixpt, @viipt, @viiipt etc?

Und noch eine dumme Frage, ist das in TeX gehackt?

Wäre eine große Hilfe, wenn Du mir sagen kannst, welche Variable ich wie setzen muss oder Du mir einen pointer zu passenden Themen schicken kannst.

Vielen Dank!

Bild von Markus Kohm

Sorry, aber eine komplette Schrifteinbindung für 10,5pt zu schreiben ist nicht in fünf Minuten zu machen. Dafür habe ich momentan keine Zeit. Die Befehle \@setfontsize, \@xipt etc. sind in den dokumentierten LaTeX-Quellen (source2e.dvi oder source2e.pdf) oder teilweise auch in den dokumentierten Quellen der Standardklassen (classes.dtx, woraus man sich ebenfalls ein classes.dvi oder classes.pdf machen kann) dokumentiert.

Vielleicht hat ein anderer hier ja die Zeit, es für dich auszuführen. Ich kann dir nur raten, dir die vorhandenen sizeXX.clo und deren Unterschiede anzuschauen (am besten in classed.dtx, weil sie dort kommentiert sind) und zu versuchen, daraus schlau zu werden. Ein Hinweis dazu noch: Wenn du \@xpt durch 10.5pt ersetzt, musst du Argumentklammern darum setzen.

Bild von Markus Kohm

Es sei darauf hingewiesen, dass KOMA-Script mit Option fontsize seit Version 3.00 offizielle die Möglichkeit bietet auch absonderliche bis absurde Schriftgrößen einzustellen. Allerdings funktionieren viele Einstellungen nur, wenn man über einen entsprechend skalierbaren Font verfügt. Die besten Chancen dafür gibt es mit lualatex oder xelatex an Stelle von pdflatex.

Comments for "Schriften stufenlos skalieren" abonnieren