- Dass dasselbe Raster von 10.8pt × 7.2pt in LaTeX und Inkscape nicht übereinstimmt, liegt daran, dass die beiden Werkzeuge unterschiedliche Punktdefinitionen verwenden
- LaTeX berechnet 1pt als 1/72.27 Zoll, Inkscape dagegen nach dem SVG-/PostScript-Schema als 1/72 Zoll
- Der Punkt ist eine seit 1517 verwendete typografische Einheit, hatte anfangs jedoch je nach Firma, Gerät und Land unterschiedliche Größen
- Der amerikanische Druckpunkt entwickelte sich weiter über die NIST-Definition von 0.013837 Zoll und die TeX-Definition von 72.27pt/in; der Unterschied ist äußerst gering
- PostScript legte den grundlegenden Benutzerraum auf 1/72 Zoll fest, verbreitete sich über den LaserWriter und setzte sich so auch in CSS, SVG und Inkscape durch
Warum die Punkte in LaTeX und Inkscape nicht übereinstimmen
- Beim Nachbauen von Diagrammen aus Logic for Programmers trat das Problem auf, dass das Raster von 10.8pt × 7.2pt in LaTeX und Inkscape nicht exakt dieselbe Größe hat
- LaTeX definiert 1 Punkt als 1/72.27 Zoll, was ungefähr 0.3515mm entspricht
- Inkscape verwendet 1 Punkt als 1/72 Zoll, was ungefähr 0.3528mm entspricht
- Der Unterschied beträgt nur etwa 0.4%, führt aber dazu, dass zwei weit verbreitete digitale Werkzeuge unterschiedliche Punktmaße verwenden
Ursprung der Punkte und Probleme der Standardisierung
- Der Punkt) ist eine seit 1517 verwendete typografische Einheit, gedacht als die kleinste Größe, mit der Drucker sinnvoll arbeiten konnten
- Anfangs war der Punkt keine standardisierte Einheit, und je nach Firma und Gerät wurden unterschiedliche Größen verwendet
- Später setzte eine Standardisierung ein, doch verschiedene Länder entschieden sich für unterschiedliche Maßstäbe
- In Deutschland und Japan beträgt der Punkt 0.250mm
- Der französische Punkt ist mit 0.399mm angegeben
- Da sich die frühe Computergeschichte stark um die USA drehte, verwenden digitale Technologien überwiegend Varianten des amerikanischen Punktes
Der amerikanische Punkt und TeX mit 72.27pt/in
- In den USA wurde der Punkt gegen Ende des 19. Jahrhunderts standardisiert, doch die damaligen Quellen nennen leicht unterschiedliche Werte
- Eine Quelle von 1900 gibt die Punktlänge mit 35/996cm an, was 72.281 Punkte pro Zoll ergibt; gleichzeitig nennt sie 867.4699 „ems“ pro Fuß, was 72.289 Punkte pro Zoll ergibt
- Eine Quelle von 1916 gibt die Standard-Pica (pica, 12 Punkte) mit 0.16604 Zoll an und nennt 72.272 „pica ems“ pro Fuß, was 72.272 Punkte pro Zoll ergibt
- Auf der folgenden Seite derselben Quelle wird die Pica erneut mit 0.166044 Zoll und der Punkt exakt mit 0.013837 Zoll angegeben
- Diese Unterschiede hängen damit zusammen, dass sich die Definitionen von Meter und Fuß im Laufe der Zeit geändert haben und dass die Abweichungen kleiner als ein Mikron waren und in der Praxis leicht ignoriert wurden
- Die offizielle Definition des NIST legt den Punkt auf 0.013837 Zoll fest; durch einfache Umrechnung ergibt sich daraus ein Wert nahe 72.27 Punkten pro Zoll
- Rechnet man 0.013837 Zoll tatsächlich zurück, erhält man 72.270001 Punkte/Zoll, und Donald Knuth korrigierte diesen winzigen Unterschied in TeX
- TeX definiert 72.27pt = 1in
- Das „pt“ von TeX ist geringfügig größer als der offizielle Druckpunkt, den die American Typefounders Association 1886 definierte
- Ein klassischer Punkt entspricht exakt 0.99999999pt, der Fehler liegt also bei etwa eins zu hundert Millionen
- Die neue Definition 72.27pt = 1in ist leicht zu berechnen und gut zu merken
- Während amerikanische Drucker den Punkt über den Zoll definierten, rechnet TeX vom Punkt aus und definiert den Zoll über den Punkt
- Das NIST scheint auch 72 Punkte/Zoll als ausreichend gute Näherung zu betrachten; TeX nennt dies
bp (big point)
PostScript, CSS, SVG und Inkscape mit 72pt/in
- Der in Inkscape verwendete Wert scheint auf die Definition des grundlegenden Benutzerraums (default user space) im PostScript-Format zurückzugehen
- In PostScript-Dokumenten ist die Längeneinheit auf der x- und y-Achse als 1/72 Zoll festgelegt; das wird als grundlegender Benutzerraum bezeichnet
- Diese Einheit wurde aus mathematischer Einfachheit und praktischer Bequemlichkeit gewählt und als sehr nah am in der Druckindustrie üblichen Druckpunkt von 1/72.27 Zoll betrachtet
- Später wird auf Seite 86 1/72 Zoll direkt als „Punkt“ bezeichnet
- Eine spätere Ausgabe fasst zusammen, dass 1/72 Zoll dem Punkt sehr nahekommt, aber nicht exakt gleich ist, und dass es keine universelle Definition des Punkts gibt
- Apple stattete den LaserWriter mit PostScript aus, andere Unternehmen folgten, und PostScript wurde de facto zur Drucksprache
- Dadurch etablierte sich 72 Punkte/Zoll praktisch als Standard der digitalen Vermessung
- Auch das W3C verwendet denselben Maßstab in CSS und SVG
- Da Inkscape ein SVG-Editor ist, gehört auch der Inkscape-Punkt zur 1/72-Zoll-Familie
- Der SVG-Editor draw.io ist eine separate Ausnahme und verwendet für die Punktgröße 1/100 Zoll
Spuren der Einheitendefinition in Frink
- Selbst in Frink, einer turing-vollständigen Sprache mit starker Unterstützung für Einheiten, lassen sich Spuren dieser Punktdefinitionen erkennen
- Berechnet man mit Frink die Werte aus der Quelle von 1900 auf Basis des Zolls vor 1959, ergibt sich Folgendes
oldinch := surveyfoot / 12 // pre 1959 inch
35 cm / (996 pts) -> oldinch / pts
0.013834839357429718876
point := 0.013837ee0 inch // exact, NIST Handbook 44, Appendix 3
printerspoint := point
texscaledpoint := 1/65536 point // The TeX typesetting system uses
texsp := texscaledpoint // this for all computations.
computerpoint := 1/72 inch // The American point was rounded
computerpica := 12 computerpoint // to an even 1/72 inch by computer
postscriptpoint := computerpoint // people at some point.
- Der Ausdruck „computer people at some point“ verweist hier auf den Übergang zum 1/72-Zoll-Grundmaß von PostScript
- Die Definition von
texscaledpoint in Frink weicht geringfügig von der tatsächlichen Definition in TeX ab
- Schreibt man sie anhand des echten TeX-Punkts neu, ergibt sich Folgendes
realtexpoint := 1/72.27 inch
realtexsp := 1/65536 realtexpoint
(realtexsp - texsp)
5.36285100578e-17 m (length)
(realtexsp - texsp) / realtexsp
1.0000000000005691827e-8
- Der Unterschied in Frinks Definition beträgt etwa 50 Attometer, also ungefähr 3% der Breite eines Protons
- TeX verwendet für die tatsächliche Berechnung „scaled points“, wobei 2^16 sp = 1 pt gilt
1 Kommentare
Lobste.rs-Kommentare
Am Ende, wo auf Frink verwiesen wird, taucht der Unterschied zwischen US Survey Inch und International Inch auf.
Ich habe früher einmal darüber geschrieben, wie das international inch entstanden ist, und weil das zu meinen Lieblingsbeispielen aus der Welt der Maße und Gewichte gehört, scheint es gut möglich, dass die unterschiedlichen Point-Definitionen um 1900 vor allem an den Grenzen der damaligen Messgenauigkeit lagen.
Der Unterschied zwischen dem Knuth-TeX-Point und dem NIST-Point ist sogar kleiner als der Unterschied, der entsteht, wenn man unterschiedliche Inch-Definitionen als Grundlage nimmt.
Die Abweichungen, die beim Einspannen von Metalllettern in einen Rahmen oder beim Gießen von Bleisatz mit Linotype entstanden, übertrafen die Präzision, die nötig wäre, um solche Point-Unterschiede überhaupt zu unterscheiden, bei Weitem; deshalb dürfte das in der Drucktechnik der damaligen Zeit praktisch kein Problem gewesen sein.
Ein weiterer historischer Hintergrund für den 1/72-inch-Point am Computer ist, dass Apple-Displays in den 1980ern gewöhnlich 72 Pixel pro Inch hatten, sodass 1 Point gleich 1 Pixel war und Software die Dokumentgröße auf dem Bildschirm leicht an die gedruckte Seite anpassen konnte.
Schreibmaschinen hatten nominell 6 Zeilen pro Inch, und wenn man auf 11-Zoll-Papier 12-Point-Schrift mit 72,27 Point pro Inch verwendet, erhält man nicht 66 Zeilen, sondern fast 66,25 Zeilen.
Bei Schreibmaschinen ist ein Unterschied von einer Viertelzeile pro Seite vielleicht kein großes Problem, aber beim Massendruck auf Endlospapier ist es wichtig, dass die Seitenlänge ein ganzzahliges Vielfaches des Zeilenabstands ist, damit die Ausrichtung erhalten bleibt.
Über Jahrzehnte vor dem Desktop-Publishing war das ein großer Anwendungsfall für Computerdruck wie Gehaltsabrechnungen oder Kontoauszüge.
Grafikausgabe vor dem Laserprinter lief über Nadeldrucker, und auch diese waren auf den Abstand von 6 Zeilen pro Inch bei Endlospapier ausgelegt.
Daher dürfte es beim Desktop-Publishing Gründe der Abwärtskompatibilität für 72 Point pro Inch gegeben haben, aber wohl eher zur Kompatibilität mit älterer niedrig auflösender Computerdrucktechnik als mit dem Satzwesen.
Knuths Ziel mit TeX waren dagegen Fotosetzmaschinen, also mussten die Maße zu denen des traditionellen Drucks passen.
Die amerikanischen und britischen Maßsysteme legten die Messtemperatur leicht unterschiedlich fest, und um einen Block herzustellen, der beiden Standards entsprach, musste man ihn bis an die Grenze der damals möglichen Genauigkeit bearbeiten.
Dass Jo blocks so weit verbreitet wurden, lag daran, dass Henry Ford sie so sehr mochte, dass er wie Victor Kiam gleich die Firma kaufte.
Oh, ich dachte, Point sei exakt als 1/72 inch definiert.
In Rich Text Format, also RTF-Dateien, gibt es noch eine andere Einheit namens „twip“, die für die meisten Maße verwendet wird; sie entspricht 1/20 eines Point.
Ich kenne die Geschichte davon nicht, aber wenn Point nicht das ist, was ich dachte, dann gilt das wohl auch für twip, und dass sich dadurch Fehler aufsummieren, ist unerquicklich.
Der Link ist falsch, aber ich habe es trotzdem gern gelesen.
Maßeinheiten sind ähnlich wie Modelle: Wichtiger als ihre Richtigkeit ist ihre Nützlichkeit.
Wenn für eine Schulaufgabe nur eine 12-Point-Schrift verlangt wird, ist es ziemlich egal, was diese Zahl exakt bedeutet.
Wenn Flugzeuge in Point pro Sekunde fliegen würden, gäbe es dafür vielleicht eine stärker standardisierte Einheit.
Ich frage mich, ob es überhaupt noch einen Grund gibt, pt zu verwenden.
Ich weiß nicht, ob es irgendeinen Vorteil hat oder ob es wie das imperial system nur aus Trägheit weiterlebt.
Es wirkt selbstverständlich, dass Point 72 pro Inch sein sollten, weil 12 × 6 = 72.
Dass jemand überhaupt auf einen anderen Wert standardisiert hat, ist eher das wirklich Überraschende.
Das lag ungefähr bei 1/6 Inch, war in der Praxis aber von Druckerei zu Druckerei leicht verschieden, und das standardisierte Pica wurde an dem tatsächlich am häufigsten verwendeten Maß ausgerichtet.