austerlitz Geschrieben Februar 7, 2017 Geschrieben Februar 7, 2017 Darauf habe ich lange gewartet: Endlich ist LibreOffice 5.3 herausgekommen. Fürs text shaping setzt es in allen Plattformen auf HarfBuzz, und nicht mehr auf die mehr oder weniger zuverlässigen Lösungen der verschiedenen OS. Das beste dabei: Nun haben wir zum allerersten Mal ein gewöhnliches Textverarbeitungsprogramm, das alle nur erdenklichen Feinheiten des OpenType Layouts detailliert ansteuern kann. Und darüber hinaus auch noch SIL Graphite. Die Kontrolle erfolgt nicht über ein eigentliches UI, sondern über den Namen der Schrift. Hier einige Beispiele: Linux Libertine:hlig (schaltet die historischen Ligaturen an, z.B. ct oder st) Linux Libertine:liga=0 (schaltet die Default-Ligaturen ab, z.B. fi) Linux Libertine:smcp&c2sc (schaltet Kapitälchen an und verwandelt Grossbuchstaben in Kapitälchen) UnifrakturMaguntia:cv04=2 (setzt die vierte character variant auf den Wert 2) UnifrakturMaguntia:cv04=2&ss01 (setzt die vierte character variant auf den Wert 2 und schaltet das zweite stylistic set ein) Ich bin begeistert! 2
Gast Arno Enslin Geschrieben Februar 7, 2017 Geschrieben Februar 7, 2017 Klasse! Damit wird auch Linux für mich wieder attraktiv. Als Alternative zu Windows 10, wenn es keine Sicherheitsupdates mehr für Windows 7 gibt. Und vielleicht unterstützt ja auch Gimp bis dahin OT-Features.
HenningH Geschrieben Februar 7, 2017 Geschrieben Februar 7, 2017 vor einer Stunde schrieb austerlitz: Die Kontrolle erfolgt nicht über ein eigentliches UI, sondern über den Namen der Schrift. Gibt es dazu irgendwo eine Übersicht, welche Befehle man wie einsetzen kann?
Þorsten Geschrieben Februar 7, 2017 Geschrieben Februar 7, 2017 Ja, hier. Angeblich sollen tatsächliche alle Funktionen unterstützt werden und eben über genau diese Tags angesprochen werden können. 1
HenningH Geschrieben Februar 7, 2017 Geschrieben Februar 7, 2017 Danke! Das ist ja eine ganze Menge...
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor einer Stunde schrieb Þorsten: Angeblich sollen tatsächliche alle Funktionen unterstützt werden und eben über genau diese Tags angesprochen werden können. Kann gut sein, dass auch nicht-registrierte Features unterstützt werden, sofern sie den gleichen Ersetzungsregeln folgen wie die unterstützten registrierten Features, z. B. das arno-Feature. Sofern die Namen der Features aus vier Zeichen bestehen und die Syntax in Ordnung ist, werden sie auch kompiliert, soweit ich mich erinnere. Das werde ich bei Gelegenheit ausprobieren. Jedenfalls ist das genau der Ansatz, den ich mir gewünscht habe, weil nichts an der Benutzeroberfläche des Programms geändert werden muss, wenn ein neues Feature registriert wird.
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Dann wäre LibreOffice ja wohl das erste Programm, wo man auch das rand-Feature nutzen könnte? Also simulierter Handschrift-Text ohne mühevolle Rotations-Bastelei?
austerlitz Geschrieben Februar 8, 2017 Themen-Ersteller Geschrieben Februar 8, 2017 vor 7 Stunden schrieb Þorsten: Ja, hier. Angeblich sollen tatsächliche alle Funktionen unterstützt werden und eben über genau diese Tags angesprochen werden können. Das sind die Features des Opentype-Layouts. Daneben unterstützt LibreOffice 5.3 aber auch SIL-Graphite-Features. Diese sind wegen einer anderen Konzeption von Schrift zu Schrift verschieden. Es hängt also letztlich immer von der Schriftart ab, welche Features unterstützt werden. Jede bessere Schriftart wird hoffentlich eine genaue Dokumentation mitbringen, wo die Features aufgelistet sind. Auch beim Opentype-Layout kann man ja nicht wissen, welche der zahllosen Features in der jeweiligen Schriftart vorkommen (ausser man bohrt die Schriftart auf, was je nach Land vielleicht nicht ganz legal ist). Ein Beispiel für eine vorbildliche Dokumentation bietet etwa die Schriftart Gentium Plus, praktischerweise auch grad mit einer ODT-Datei.
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Das Problem dabei: Wer hat schon die Font-Duku immer gleich griffbereit, wenn man in der Anwendung seine installierten Fonts durchsucht. Ich beobachte das ja auch, da mache ich schon eine Doku, wenn es für die Benutzung einer bedarf. Und dann bekomme ich reichlich anfragen, wie man denn das ſ schreibt, einfach weil aus dem Downloadpaket nur die .ttf-Datei rausgeholt wird, und der Rest wird einfach gelöscht. Ich glaube, mit mehr OpenType-Features in der Masse wird das nur schwieriger. Es bräuchte also mindestens einer Font-Viewer-Software, welche die möglichen OpenType-Features einfach anzeigt.
Þorsten Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 12 Stunden schrieb catfonts: Dann wäre LibreOffice ja wohl das erste Programm, wo man auch das rand-Feature nutzen könnte? Bau einen Font mit rand; dann können wir das testen. Das ist halt das alte Henne-Ei-Problem. Bisher hat kaum oder gar keine Software rand unterstützt und daher haben Schriftgestalter die Funktion auch nicht genutzt.
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 21 Stunden schrieb austerlitz: Die Kontrolle erfolgt nicht über ein eigentliches UI, sondern über den Namen der Schrift. Das Eingabefeld ist allerdings so mickrig, dass man schnell den Überblick verliert. Kann man die Breite des Schriftart-Feldes anpassen? Und ich kann Symbolleisten als Werkzeugspitze benutzen, also mit (!) einer Symboleiste malen, wenn ich sie verschiebe. Aber solange das Programm stabil läuft, ist das nur ein Schönheitsfehler.
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 17 Stunden schrieb catfonts: Dann wäre LibreOffice ja wohl das erste Programm, wo man auch das rand-Feature nutzen könnte? Also simulierter Handschrift-Text ohne mühevolle Rotations-Bastelei? Mmh. Damit könnte man sich auch Zahlen zuwürfeln lassen. feature rand { sub r a n d from @lnum; } rand; randrandrand müsste dann in eine beliebige natürlichen Zahl zwischen 000 und 999 umgewandelt werden. Aber ist ein paar Jahre her, dass ich Features programmiert hab. Zum Testen wäre es aber geeignet, weil die meisten Fonts Ziffern haben. Oder einen Würfel: @wuerfel=[one.wurf two.wurf three.wurf four.wurf five.wurf six.wurf]; feature rand { sub w u e r f e l from @wuerfel; sub w udieresis r f e l from @wuerfel; sub d i e from @wuerfel; } rand;
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 35 Minuten schrieb Arno Enslin: Feature rand { sub r a n d from @lnum } rand; Das wird wohl nicht funktionieren, denn das ist ein Feature nach dem Schema: Ersetze ein Zeichen durch eine zufällige Auswahl aus mehreren Zeichen, bzw. ersetze ein Zeichen aus einer Klasse durch das korrespondierende Zeichen aus mehreren Klassen. also nach dem Schema sub a from [a.alt1 a.alt2 a.alt3]; oder sub@normal from [@alt1 @alt2 @alt3 ...]; Um jetzt so ein System wie dem Würfel zu bauen müsste das wohl über 2 Features laufen, die nacheinander abgehandelt werden: feature liga{ sub w u e r f e l by wuerfel; sub w udieresis r f e l by wuerfel; sub d i e by wuerfel; }liga; feature rand { sub wuerfel from @wuerfel; }rand;
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Okay. Wenn ich das richtig verstehe, geht es aber nur darum, dass keine Zeichenfolge durch eine zufällige Auswahl eines anderen Zeichens ersetzt werden kann, sondern nur ein einzelnes Zeichen. FontLab hatte gerade schon wegen der Zeichenfolge gemeckert. Deswegen hatte ich „r a n d” durch „r” ersetzt. Aber FontLab wählt immer zero, das erste Element in der lnum-Klasse. Aber ich versuche es nochmal mit makeotf (AFDKO). Nicht auszuschließen, dass FontLab das zwar kompiliert, aber es fehlinterpretiert. Oder ich muss mich mal wieder mit der Spezifikation und der Feature-File-Syntax befassen.
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Das liegt eben daran, dass Fontlab selbst dieses Feature in seiner Vorschau nicht unterstützt - was ja nicht unbedingt bedeutet, dass das Feature dann nicht vernünftig in die Schrift hinein kompiliert wird.
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 8 Minuten schrieb catfonts: was ja nicht unbedingt bedeutet, dass das Feature dann nicht vernünftig in die Schrift hinein kompiliert wird. Stimmt. Aber ich ziehe das AFDKO ohnehin FontLab bei solchen Sachen vor. Ein wenig einlesen muss ich mich trotzdem wieder. Ist lange her, dass ich mich mit Makeotf befasst habe, um damit Features zu kompilieren. Ich kann mich auch gar nicht mehr daran erinnern, ob man z. B. w u e r f e l erst durch ein einzelnes Zeichen ersetzen und dann dieses einzelne Zeichen durch ein anderes Zeichen ersetzen kann.
austerlitz Geschrieben Februar 8, 2017 Themen-Ersteller Geschrieben Februar 8, 2017 vor 16 Stunden schrieb catfonts: Dann wäre LibreOffice ja wohl das erste Programm, wo man auch das rand-Feature nutzen könnte? Vermutlich nicht. Die Implementierung des rand-Features steht noch auf harfbuzz/TODO. Ein anderer Ansatz zur Randomisierung (ohne 'rand') ist diskutiert unter Making a Font: Maximal – Part III. vor 4 Stunden schrieb catfonts: Ich glaube, mit mehr OpenType-Features in der Masse wird das nur schwieriger. Es bräuchte also mindestens einer Font-Viewer-Software, welche die möglichen OpenType-Features einfach anzeigt. Ja, ein Feature-Viewer wäre extrem nützlich. Auf macOS haben Programme wie TextEdit etwas in die Art, aber auch nicht wirklich zufriedenstellend. Sonst habe ich nur bescheidene Ansätze gefunden, etwa luatex - How do I get a list of all font features supported by current font oder – was ich noch nicht zum Laufen habe bringen können – thanlwinsoft/groooext. 1
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 LibreOffice wählt genau wie FontLab das erste Element in der Klasse, also im folgenden Beispiel immer die Null (zero). Ich hatte jetzt Folgendes kompiliert: feature liga { sub r a n d by x; } liga; feature rand { sub x from [zero one two three four five six seven eight nine]; } rand; Aber immerhin wird die komplette Zeichenfolge rand durch die Null (zero) ersetzt.
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 vor 6 Stunden schrieb catfonts: Es bräuchte also mindestens einer Font-Viewer-Software, welche die möglichen OpenType-Features einfach anzeigt. Optimal wäre es, wenn das Textverarbeitungsprogramm für jeden Font nur die verfügbaren Features des Fonts anzeigte. Aber ein Feature-Viewer-Programm sollte es trotzdem geben. Naja, LibreOffice scheint auf dem richtigen Weg zu sein.
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Dann ist das eben so ein Fallback, weil halt rand nicht drin ist, macht das Programm das erst beste, was sich aus der Regel ergibt: Tausche Zeichenfolge durch ein Zeichen (das erste der Folge) Probier doch mal, ob er das gleiche mit dem arno-Feature macht. Und damit sind wir wieder bei diesem Henne-Ei Problem: Randomize ist der heilige Gral, aber weil keine Software, nicht mal die der Erfinder dieses Feartures das unterstützt baut das kein Font-Ersteller in einen Font ein, und weil es daher keine Fonts mit rand gibt, baut das wiederum keiner in seine Software ein.
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 (Es ging catfonts um die Frage, ob LibreOffice 5.3 unregistrierte Features interpretiert, wie ich anfangs vermutet hatte. Und ja, LibreOffice 5.3 kann das. ) feature arno { sub a r n o by x; } arno; feature rand { sub x from [zero one two three four five six seven eight nine]; } rand;
catfonts Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Und macht der dann auch ein Ersetze eins durch mehrere? feature arno { sub x by a r n o; } arno;
Gast Arno Enslin Geschrieben Februar 8, 2017 Geschrieben Februar 8, 2017 Ja, funktioniert. Auch nicht selbstverständlich.
Þorsten Geschrieben Februar 9, 2017 Geschrieben Februar 9, 2017 Ich habe gerade mal die Linux-Version getestet. Opentype funktioniert ganz vorzüglich, auch ohne eigenes UI. Man kann (und sollte) sich einfach Absatz- bzw. Zeichenformate anlegen, in denen der Font dann meinetwegen als Schriftname:smcp definiert ist und fertig – schon werden beim Zuweisen des Formats Kapitälchen benutzt. 1
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenEinloggen
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden