Wie funktioniert die zufällige Auswahl alternativer Zeichen in OpenType-Schriftarten?

9

Ich habe eine ähnliche Frage wie „Schreiben von Text mit Zeichenvariationen“ : Ich möchte eine lässige handgeschriebene Schriftart erstellen, die die natürliche Vielfalt zwischen Vorkommen derselben Glyphe reproduziert, die man in handgeschriebenem Text findet. Kontextalternativen sind gut, aber meines Wissens eignen sie sich hauptsächlich für Buchstaben, die miteinander verknüpft sind, als für ein Skript, bei dem alle Buchstaben durch Leerzeichen getrennt sind.

Eine der Antworten auf die oben verlinkte Frage lautet (Schwerpunkt liegt bei mir):

Während Sie normalerweise nur wenige Buchstaben mit einer kontextbezogenen Alternative haben, ist es theoretisch möglich, mehrere Formulare pro Buchstabe zu haben. Aber ich glaube nicht, dass Sie ihr Aussehen wirklich zufällig bestimmen können, sondern nur durch sie radeln können . Wenn Sie also drei Formen von 'a' hätten, würden sie nacheinander verwendet und in 'Die schwarze Katze saß auf der Matte' wiederholt. )

Nun, es scheint nicht wahr zu sein, da ich einige Erwähnungen einer OpenType-Funktion namens randomize gefunden habe , die das anscheinend kann. Zum Beispiel auf dieser TeX-Paket- Webseite:

Knuths Originalschriften erzeugten zufällig verschiedene Formen. Dies ist in einer OpenType-Schriftart nicht möglich. Vielmehr enthält die Schriftart mehrere Varianten jedes Glyphen und verwendet die OpenType-Zufallsfunktion, um für jeden Aufruf eine Variante auszuwählen .

Also: Gibt es in OpenType einen Mechanismus für die zufällige Auswahl von Glyphenvarianten und wie funktioniert das? Ein Link zu einer angemessenen Online-Dokumentation oder einem Angebot aus der Spezifikation wäre von unschätzbarem Wert. Außerdem: Halten Sie dieses Ziel für sinnvoll, dh es würde die Qualität des gesetzten Textes erheblich verbessern, wenn mehrere zufällig ausgewählte Glyphenvarianten enthalten wären?

F'x
quelle
In einer kürzlich durchgeführten Diskussion über die Opentype-Mailingliste schien es, dass nur TeX die randFunktion unterstützt (und möglicherweise einige Webbrowser).
Monica wieder herstellen - M. Schröder
@ MartinSchröder hast du einen Link zu dieser Diskussion? es würde eine gute Antwort geben
F'x
Die Liste ist hier , das Archiv ist hier . Wie Sie sehen können, ist es ziemlich geschlossen. :-(
Monica wieder herstellen - M. Schröder
Wie es in einfachen Worten funktioniert, ist Mathematik. Wenn es zehn Varianten eines Glyphen gibt, generiert eine Funktion eine Zufallszahl zwischen eins und zehn und rendert die entsprechende Variante. Programmatisch gesehen müssten Sie sich den Code dieses "Randomize" -Skripts ansehen.
Moscarda

Antworten:

2

Ich glaube, was Sie beschreiben, ist das kontextbezogene Alternativmerkmal von opentype. ( http://msdn.microsoft.com/en-us/library/ms745109.aspx )

Nick Shinn hat einen wirklich interessanten Artikel über viele der Funktionen, die mit kontextbezogenen Alternativen verfügbar sind, und darüber, wie er sie in fünf von ihm entworfenen Schriftarten verwendet hat. Insbesondere Duffy Script wurde so verwendet, wie Sie es beschreiben. ( http://ilovetypography.com/2011/04/01/engaging-contextuality/ )

Bei genauerer Betrachtung konnte ich diesen Beitrag finden, in dem beschrieben wird, wie Sie bei nachfolgenden Verwendungen (die im Allgemeinen zufällig erscheinen) durch Ihre Glyphen rotieren: http://forums.adobe.com/message/1785905#1785905

Das taucht genau in die Mitte ein. Ich kann weiter suchen, wenn Sie etwas möchten, das ein bisschen mehr Informationen enthält, um Ihnen den Einstieg zu erleichtern, oder wenn ich Ihre ursprüngliche Anfrage falsch verstanden habe.

Anne
quelle
2

Ich habe nicht mit der Randomize-Funktion gespielt, aber ich habe einige gute Ergebnisse mit der umfassenden Verwendung von Ligaturen erzielt.

Die meisten Variationen in der Handschrift hängen mit dem Kontext zusammen: Daraus folgt, dass dies das Ende des Wortes ist usw. OpenType-Ligaturen können eine Menge Variationen aufnehmen, wenn Sie bereit sind, dies gut zu planen.

Es gibt auch die legendäre Beowolf-Schrift von LettError. Diese Art der Programmierung ist nichts für durchschnittliche Entwickler.

** UPDATE **

Immer noch keine Antwort? Ich dachte, ein kluger Programmierer hätte dies inzwischen für Sie gelöst. Lassen Sie mich dem Pool ein wenig mehr Informationen hinzufügen.

Die einzigen mir bekannten echten Randomisierungsexperimente (wie oben erwähnt Beowolf) wurden mit PostScript durchgeführt. Wenn Sie bereit sind, sich von OpenType zu entfernen, hat Luc Devroye ein Papier (PDF) erstellt , das sich mit der Programmierung einer PostScript Type 3-Lösung in diesem Problem befasst. Er hat auch eine Liste von Dingen im Zusammenhang mit dem Problem der zufälligen Schriftarten als Referenz.

Wie bei allen Dingen gab es vor einiger Zeit eine Diskussion zu diesem Thema auf Typophile . In diesem Thread hat Thomas Phinney vor 8 Jahren folgende Aussage gemacht, von der ich glaube, dass sie immer noch zutrifft (die OpenType-Spezifikation hat nicht viel geändert, was mir bekannt ist):

Sicher. Angenommen, Sie möchten, dass es in einigen vorhandenen Anwendungen funktioniert, haben Sie eine nicht aufregende Wahl, da jeder Ansatz sehr begrenzt ist, wie / wo er funktioniert:

  • OpenType (kontextbezogen, WYSIWYG, derzeit nur von Adobe-Apps unterstützt, jedes Ausgabegerät, am einfachsten zu codieren, aber das sagt nicht viel, verwenden Sie FontLab oder vielleicht DTL FontMaster, um es zu erstellen)

  • AAT (nur kontextbezogen, WYSIWYG, Mac, derzeit nur von einer Handvoll Apps unterstützt, jedes Ausgabegerät, schwer zu codierende kontextbezogene Inhalte, Apples Befehlszeilentools verwenden, um die Funktionen in eine bereits vorhandene Schriftart zu kompilieren)

  • Typ 1 (echt zufällig, nicht WYSIWYG, funktioniert in vielen Apps, aber nicht in den neuesten Adobe-Apps, funktioniert nur mit PostScript-Ausgabegeräten, Sie müssten wahrscheinlich ein Programmierer sein, um es zu codieren)

Zivilkleidung
quelle
Ja, Ligaturen erlauben Variationen, aber das ist nicht dasselbe wie Randomisierung ... Vielen Dank für den zugehörigen Link zu Beowolf, mir war diese Schriftart nicht bekannt. Es ist cool!
F'x
Wenn Sie das Gefühl der Handschrift wirklich einfangen möchten, müssen Sie zunächst die Ligaturoptionen identifizieren, aus denen eine zufällige Auswahl getroffen werden kann. Die Kombination der beiden wäre eine schöne Leistung des Schriftdesigns. Werfen Sie einen Blick auf Sudtipos 'Arbeit: Adios Script, Affair und insbesondere Business Penmanship kommen in den Sinn -> sudtipos.com/fonts/99
Zivil