TobiW Geschrieben März 3, 2017 Geschrieben März 3, 2017 vor 2 Stunden schrieb catfonts: Ja, das ist richtig, und gefällt mir eigentlich auch nicht, aber ich kenne da leider keinen Weg, das zu umgehen. Die Sache läuft ja eigentlich nicht über einen Zähler, sondern nach dem Motte: Der Buchstabe davor entscheidet. So schlimm finde ich das gar nicht, Mir fiel das nur auf, weil ich im Test mehrfach die gleichen Buchstaben pro Zeile ausgebe. Aber in der Praxis ist das ja wohl ein eher seltenes Phänomen und betrifft höchstens den Fall, das der erste Buchstabe zweier Zeilen der gleiche ist. Das wird man kaum merken, denke ich – wir schauen ja grad auch alle besonders genau hin 1
catfonts Geschrieben März 3, 2017 Geschrieben März 3, 2017 Na ja, bei meiner Testseite hatte ich in drei recht dicht folgenden Zeilen das gleiche Wort, und das kommt dann natürlich komplett einheitlich. In so fern hätte ich schon gern eine Lösung.
Þorsten Geschrieben März 3, 2017 Geschrieben März 3, 2017 Aber nur, wenn die durch 9 geteilte Zeilenposition (ohne Leerzeichen) des Wortanfangs immer denselben Rest ergibt, oder? http://type.dt1.org/font/cat/erikas-farbband/#rotation Allerdings könnte der Effekt vielleicht sichtbar werden, wenn man wirklich Texte hat, in denen mehrere aufeinander folgende Zeilen mit denselben Zeichenketten beginnen, etwa so: http://type.dt1.org/font/cat/erikas-farbband/#conni Ließe sich der Effekt, ohne den Rotationseffekt an sich zu verkomplizieren, vielleicht vermeiden, indem man Nutzern erlaubt, per cv0X(Zeichen) einfach den x-te Variante eines Zeichens manuell auszuwählen? Würde es dann im nächsten Zeichen automatisch mit der x+1. Variante weitergehen?
catfonts Geschrieben März 4, 2017 Geschrieben März 4, 2017 Leider klappt das alles nicht. Auch die Handeingabe, denn was sollte der Nutzer da eingeben, und zum 2. kann ich ja keine Variablen verwenden, OpenType ist nun einmal keine Programmiersprache. Also gut, geht nicht anders. Das neueste Fundstück von TobiW und die durchweg positive Reaktion auf ErikaFarbband haben mich darüber nachdenken lassen, was dann an echten Bleisatz Akzidenzen so toll ist, wie sie Martin so herstellt. Es ist sicher nicht die sicher tolle handwerkliche Satzqualität, denn das dürften nach mehreren Jahren der Entwicklung auch typopgrafisch geschulte Anwender an guten Satzprogrammen hin bekommen. Es ist sicher auch nicht diese Fühlbarkeit nach Letterpress-Manier, denn die ist handwerklich eigentlich nicht wirklich so OK. Ich glaube, es sind die winzigen, kaum sichbaren Zufälligkeien durch abgenudelte oder im Setzkasten angestoßener Lettern, etwas Druckfarbe, die sich über die Konturen quetscht - alles kaum sichtbar, aber eben doch anders als immeer 100% identische Computerbuchstaben. In der Natur ist nichts 100% symmetrisch und Glatt. Und dies hat mich jetzt dazu gebracht, noch einmal eine nur noch dezent unakkurate Version zu bauen, die ich ErikasBüro genannt habe, damit beide nebeneinander installiert werden können. in Fontforge genau nach Fehlern durchsucht, da ist diese Software ja wirklich super pingelig, echt Klasse, auch wenn ich das UI gar nicht mag. Die sache mit codierten Subscript und Superscript- Ziffern liegt noch in der ToDo-Liste ErikasBuero.otf 1
Gast Arno Enslin Geschrieben März 4, 2017 Geschrieben März 4, 2017 vor 1 Stunde schrieb catfonts: Ich glaube, es sind die winzigen, kaum sichbaren Zufälligkeien durch abgenudelte oder im Setzkasten angestoßener Lettern, etwas Druckfarbe, die sich über die Konturen quetscht - alles kaum sichtbar, aber eben doch anders als immeer 100% identische Computerbuchstaben. In der Natur ist nichts 100% symmetrisch und Glatt. 1. Worauf willst du hinaus? Darauf, dass mit Bleilettern gedruckter Text wegen der Unregelmäßigkeiten besser lesbar ist? Oder wegen der Unregelmäßigkeiten irgendwie angenehmer ist? Ich finde Erikas Farbband wirklich schön, um am Bildschirm einen Schreibmaschineneffekt zu erzielen, aber ich bezweifele, dass sie wegen der Unregelmäßigkeiten angenehmer zu lesen ist als eine Erika-Version, die auf Basis von Zeichen entstanden ist, die unter Idealbedingungen getippt wurden, unter denen es zu keinen Unregelmäßigkeiten kommt. Solche Idealbedingungen gibt es bei der Erika nicht, selbst wenn Maschine und Farbband fabrikneu und handverlesen sind. Worauf ich hinaus will, ist, dass sich die getippten Zeichen auch unter solchen Idealbedingungen von den Zeichnungen der Zeichen, die Basis für die Typen der Maschine waren, unterscheiden werden. Und da sind wir ganz schnell beim Thema Optical Sizes. 2. Mir fällt bei manchen Antiquas auf, dass sie beim Lesen zu einer Art Linienbildung neigen, u. z. nicht auf Höhe der Serifen. Ich konnte mir das bisher nur durch eine zu große Regelmäßigkeit erklären, z. B. (!) damit, dass sich der Winkel der Achsen in den Zeichen, die die Punkte der schmalsten Stellen im Kurvenverlauf schneiden, zwischen den Zeichen nicht deutlich genug oder gar nicht unterscheiden. Die Stempel Garamond empfinde ich z. B. als wunderbar rhythmisch. Ich kann den unangenehmen Effekt der Linienbildung nicht besser beschreiben, aber die Stempel Garamond neigt überhaupt nicht dazu. Die Wortbilder sind ein perfektes Zusammenspiel aus Symmetrie und Asymmetrie. 3. Es gibt in der unbelebten Natur schon recht viele Formen, die höchst symmetrisch sind oder zumindest so auf den Menschen wirken, z. B. die Formen von Kristallen. Ich glaube aber auch, dass wir Menschen perfekte Symmetrien nicht als lebendig empfinden. Sie können irritieren.
catfonts Geschrieben März 4, 2017 Geschrieben März 4, 2017 vor 1 Minute schrieb Arno Enslin: Darauf, dass mit Bleilettern gedruckter Text wegen der Unregelmäßigkeiten besser lesbar ist? Oder wegen der Unregelmäßigkeiten irgendwie angenehmer ist? Nein, nicht dass diese Unregelmäßigkeiten irgendwie das Lesen erleichtern, nein, ganz und gar nicht. Drum habe ich ja auch von typischen Akzidenzen gesprochen, bei denen der Text eben nicht nur die bloße Informationsübermittlung sein soll, sondern auch ein wenig Gefühl mitschwingt. Und so wirkt dann der Handsatz-Text auf der Visitenkarte trotz dessen dass er in einer sauberen Satzschrift gesetzt ist, und das nach allen Regeln der Kunst durch diese kaum sichtbaren leichten Unregelmäßigkeiten irgedwie organischer, ohne das es direkt jemand sagen würde. Ich erinnere ich, so manche Karte überreicht bekommen zu haben, und da kam es eben auch vor, das mir manche mehr, manche weniger gefielen, ohne das ich sagen könnte, warum. Ich hab die damals in Mappen gesammelt, und aufbeahrt, obwohl die meisten darin kaum noch aktuell sein dürften - Ich hab mir davon gestern ein paar angesehen, und da warenn tatsächlich eindeutig im Buchdruck gedruckte darunter, eben mit diesen winzigen Abweichungen, die erst wirklich bei sehr starker Vergrößerung sichtbar sind.
Þorsten Geschrieben März 5, 2017 Geschrieben März 5, 2017 vor 4 Stunden schrieb catfonts: Auch die Handeingabe, denn was sollte der Nutzer da eingeben, und zum 2. kann ich ja keine Variablen verwenden Na ich hatte mir 9 cv0X-Tabellen vorgestellt, in denen Sachen drin stehen wie cv01 { sub A by A.001 } … natürlich per Script generiert und idealerweise durch die Verwendung von Klassen noch weiter abgekürzt. Da könnte man dann z.B. per CSS festlegen, dass der erste Buchstabe der ersten Zeile immer mit Glyphvariante 1 gezeichnet wird, in der 2. Zeile mit Glyphvariante 2 usw. usf. Ich habe das nicht getestet, aber die calt-Regel sollte dann mit den nicht per cvXX behandelten Glyphen einfach in der Reihenfolge weiter machen, oder? Also der 2. Buchstabe der 1. Zeile käme dann auch dem Variantensatz 2, der 2. Buchstabe der 2. Zeile aus Satz 3 usw. usf. Damit sähen dann Zeilen, die alle mit derselben Zeichenfolge beginnen, doch unterschiedlich aus. Oder wenn es einfach mal so passiert, dass sich identische Wörter nach 9·x Zeichen wiederholen, könnte man im Notfall auch manuell dem ersten Buchstaben eines der Wörter per cvXX eine andere Variante zuweisen – und dann sähen auch die folgenden Zeichen anders aus als im ersten Wort.
Gast Arno Enslin Geschrieben März 5, 2017 Geschrieben März 5, 2017 # aes = allExceptSpace feature salt { sub @ss00' @aes @aes space by @ss01; sub @ss00' @aes @aes @aes @aes space by @ss02; sub @ss00' @aes @aes @aes @aes @aes @aes space by @ss03; sub @ss00' @aes @aes @aes @aes @aes @aes @aes @aes space by @ss04; sub @ss00' @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes space by @ss05; sub @ss00' @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes space by @ss06; sub @ss00' @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes space by @ss07; sub @ss00' @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes @aes space by @ss08; # In jedem zweiten Wort wird das erste Zeichen durch eine der Varianten ersetzt. Es sei denn, das Wort ist länger als 16 Zeichen. # Aber das wollen wir ja nicht. Deshalb wird die Ersetzung ... sub space @ss01' by @ss00; sub space @ss02' by @ss00; sub space @ss03' by @ss00; sub space @ss04' by @ss00; sub space @ss05' by @ss00; sub space @ss06' by @ss00; sub space @ss07' by @ss00; sub space @ss08' by @ss00; # ... bei allen Wörtern, die nicht am Zeilenanfang stehen, wieder rückgängig gemacht. lookup rotate { sub @ss00 space @ss00' by @ss01; sub @ss00 @ss00' by @ss01; sub @ss01 space @ss00' by @ss02; sub @ss02 space @ss00' by @ss03; sub @ss03 space @ss00' by @ss04; sub @ss04 space @ss00' by @ss05; sub @ss05 space @ss00' by @ss06; sub @ss06 space @ss00' by @ss07; sub @ss07 space @ss00' by @ss08; sub @ss01 @ss00' by @ss02; sub @ss02 @ss00' by @ss03; sub @ss03 @ss00' by @ss04; sub @ss04 @ss00' by @ss05; sub @ss05 @ss00' by @ss06; sub @ss06 @ss00' by @ss07; sub @ss07 @ss00' by @ss08; } rotate; lookup rotate; } salt; Habe es nicht ausprobiert. Aber wenn es funktioniert, bringt es in Bezug auf das Zeilenanfangsproblem wieder etwas Abwechslung rein. Edit: Statt @aes geht wahrscheinlich auch einfach @ss00. Edit 2: Wobei ich schon wieder vergessen habe, wie die Features abgearbeitet werden. Wie gesagt, ist lange her, dass ich mich einigermaßen intensiv damit beschäftigt habe. Kann also auch sein, dass es gar nicht funktioniert. Edit 3: In jedem zweiten Wort stimmt natürlich nur unter der Voraussetzung, dass jede Wortlänge gleich wahrscheinlich ist. Und das ist sie ja nicht.
Gast Arno Enslin Geschrieben März 5, 2017 Geschrieben März 5, 2017 Ne, das klappt nicht, wie ich mir das gedacht habe. Liegt daran, wie Features bzw. Text abgearbeitet werden.
Gast Arno Enslin Geschrieben März 5, 2017 Geschrieben März 5, 2017 @catfonts Also ich habe mir das nochmal angeschaut. Mit Lookups kann man die Abarbeitung beeinflussen, die in meinem ersten Versuch u. a. problematisch war. Das Folgende ist noch nicht optimal, aber ich denke, so in etwa ließe es sich machen. Ich habe das dieses Mal getestet. Probiere es bitte auch mal aus: feature salt { lookup one { sub @ss00 @ss00' by @ss01; } one; sub @ss01 @ss00' by @ss01; sub space @ss00' by @ss01; lookup two { sub @ss00' @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; } two; lookup rotate { sub @ss01 space @ss01' by @ss02; sub @ss02 space @ss01' by @ss03; sub @ss03 space @ss01' by @ss04; sub @ss04 space @ss01' by @ss05; sub @ss05 space @ss01' by @ss06; sub @ss06 space @ss01' by @ss07; sub @ss07 space @ss01' by @ss08; sub @ss01 @ss01' by @ss02; sub @ss02 @ss01' by @ss03; sub @ss03 @ss01' by @ss04; sub @ss04 @ss01' by @ss05; sub @ss05 @ss01' by @ss06; sub @ss06 @ss01' by @ss07; sub @ss07 @ss01' by @ss08; } rotate; } salt; Das Problem ist noch, dass @ss00 jetzt nur noch am Zeilenanfang auftreten kann. Aber ich vermute, dass sich das Problem beheben lässt. Nur kann ich mich gerade superschlecht konzentrieren.
Þorsten Geschrieben März 5, 2017 Geschrieben März 5, 2017 vor 23 Stunden schrieb catfonts: dies hat mich jetzt dazu gebracht, noch einmal eine nur noch dezent unakkurate Version zu bauen, die ich ErikasBüro genannt habe, damit beide nebeneinander installiert werden können. Super. Wie gewohnt hier zum Testen: http://type.dt1.org/font/cat/erikas-farbband/
catfonts Geschrieben März 5, 2017 Geschrieben März 5, 2017 Sorry, der erste Absatz schaut aus, als hätte ich den geschrieben Guck noch mal rein: fuktioniert, vorkommenen, Darsrellung
catfonts Geschrieben März 5, 2017 Geschrieben März 5, 2017 Arnos "erste Wortlänge" Erkennung funktioniert prima. Das löst zwar noch nicht das Problem, fängt die Zeile mehrfach mit dem gleichen Wort an, vermindert aber das Risiko, dass die Zeilen mehrfach mit der gleichen Buchstabenversion starten, und dass gleiche Buchstaben direkt untereinander landen. Ich hab das noch ein wenig aufgebohrt, damit ist die Statnummer dann der Teilungsrest /9 der ersten Wortlänge lookup two { sub @ss00' @ss01 space by @ss01; sub @ss00' @ss01 @ss01 space by @ss02; sub @ss00' @ss01 @ss01 @ss01 space by @ss03; sub @ss00' @ss01 @ss01 @ss01 @ss01 space by @ss04; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss05; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss06; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss07; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss08; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss01; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss02; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss03; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss04; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss05; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss06; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 space by @ss07; sub @ss00' @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @sso1 space by @ss00; } two;
Gast Arno Enslin Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor 14 Stunden schrieb catfonts: @ss01 @ss01 @ss01 @ss01 @ss01 @ss01 @sso1 space by @ss00; } two; Da hat FontLab gemeckert. Funktioniert nach der Korrektur aber gut. Und die größere Variation ist besser. Man könnte natürlich auch noch die Wortlänge nach dem ersten oder sogar nach dem ersten und zweiten Space erfassen, womit auch Zeilen, die mit Wörtern gleicher Länge beginnen, in Bezug auf die Zeichenklassen variiert werden könnten. Zitat Þorsten: Conni in den Bergen Conni beim Frisör Conni geht verloren Damit sich die zweite und dritte Zeile in Bezug auf die Zeichenklassen unterscheidet, müsste man auch die Wortlänge nach dem zweiten Space erfassen. Die Wortlänge nach dem ersten Space zu erfassen würde aber bei zehn Zeichen pro Wort schon 100 Ersetzungs-Regeln erfordern. Das wäre noch im Rahmen. Erfasst man noch die Wortlänge nach dem zweiten Space, dürfte sich das in Bezug auf die Dateigröße schon spürbar bemerkbar machen. Und ich sehe das halt so, dass Erikas Farbband sich gerade im Web besonders gut macht. Als Standard-Font für meine Website würde ich Erikas Farbband wegen der Dateigröße jetzt schon nicht einsetzen. Aber das würde ich schon nicht bei 200 KB pro Schnitt. Insofern fände ich es nicht schlimm, wenn zumindest noch die Wortlänge nach dem ersten Space erfasst werden würde. Außerdem könnte man, dem Salt-Feature noch ein paar ss-Features vorschalten, die bei sich wiederholenden Zeilen per CSS manuell aktiviert werden können. Edit / In dem Zusammenhang habe ich noch zwei Anmerkungen, die nützlich sein könnten: Erstens muss ein Lookup nicht in einem Feature stehen, soweit ich weiß. Zweitens kann ein Lookup von einem Feature auch mehrfach aufgerufen werden. (Das hast du bei dem in der vfb-Datei gespeicherten salt-Feature sogar in gewisser Weise gemacht. Denn unter dem Rotationslookup stand noch eine Anweisung zum Aufruf des Lookups. Der wird aber automatisch abgearbeitet, wenn er in einem Feature steht.) D. h. das würde, glaube ich, zumindest mit dem AFDKO auch funktionieren: lookup xy { # steht nicht innerhalb eines Features. sub @ss00 by @ss03; sub @ss01 by @ss03; } xy; feature aufruf { lookup xy; sub @ss03 by @ss01; lookup xy; } aufruf; Edit 2: Solltest du außerdem das abgeänderte salt-Feature in den Font einbauen, dann kannst du im Grunde die Zeichen der Klasse ss00 als Kopien der Zeichen der Klasse ss08 anlegen. Dann als Composites. Denn mit dem abgeänderten salt-Feature ist die Klasse ss00 ja quasi verschenkt, da sie nur noch am Zeilenanfang auftreten kann. Edit 3: Ich glaub, es wäre gut, den Erika-Strang in einen eigenen Thread auszulagern.
catfonts Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor 2 Stunden schrieb Arno Enslin: Man könnte natürlich auch noch die Wortlänge nach dem ersten oder sogar nach dem ersten und zweiten Space erfassen, womit auch Zeilen, die mit Wörtern gleicher Länge beginnen, in Bezug auf die Zeichenklassen variiert werden könnten. Ich fürchte, damit wird das System überfordert. Ich hatte ja deine Wortlängenerkennung schon so erweitert, das die Zeilen mit jeder Klasse begonnen werden, abhängig von der Wortlänge erweitert, dabei hatte ich zunächst die Wortlänge bis 20 Teichen ausgebaut, und bekam eine kryptische Fehlermeldung "Falsches Token (") " dabei hatte ich ja die Zeilen kopiert und nur zusätzliche @ss01 eingebaut. Erst als ich die Zahl wieder auf 17 Buchstaben verkürzt hatte, lief das wieder problemlos durch. vor 2 Stunden schrieb Arno Enslin: Solltest du außerdem das abgeänderte salt-Feature in den Font einbauen, dann kannst du im Grunde die Zeichen der Klasse ss00 als Kopien der Zeichen der Klasse ss08 anlegen. Dann als Composites. Denn mit dem abgeänderten salt-Feature ist die Klasse ss00 ja quasi verschenkt, da sie nur noch am Zeilenanfang auftreten kann. In meiner Wortlängenerkennung geht sie sogar total flöten. Da werde ich doch einfach eine Klasse ss09 anlegen und in die Zirkelei einbauen, die auf die gleichen Glyphen verweist, wie ss00. Dafür muss ich ja nicht extra noch mal Composite-Glyphen anlegen. Für diese Zirkelei-Testerei hab ich da mal einen Versuchsfont mit nummerierten Buchstaben gebaut: Versuch.ttf
Þorsten Geschrieben März 6, 2017 Geschrieben März 6, 2017 Super. Ist eingebaut: http://type.dt1.org/font/cat/erikas-farbband/ (Zum Testen mit Maus oder Finger auf Debug am oberen Rand!) Interessant finde ich ja, dass zumindest Firefox durch <br> erzeugte Zeilenanfänge in dieser Beziehung anders behandelt als durch Blockelemente erzeugte, siehe z.B. die beiden Listen ab http://type.dt1.org/font/cat/erikas-farbband/#conni Noch eine Idee: Ließe sich der »Rotationsindex« vielleicht manuell dadurch beeinflussen, indem du neun identische Versionen irgendeines unsichtbaren Zeichens (was weiß ich, ZWJ, ZWNJ oder zero-width space?) erstellst und in die Rotationsklassen mit aufnimmst? Da könnte man bei Bedarf dann einfach ein paar von diesen Zeichen an den Zeilenanfang stellen und den Index so verändern?
Gast Arno Enslin Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor 2 Stunden schrieb catfonts: Da werde ich doch einfach eine Klasse ss09 anlegen und in die Zirkelei einbauen, die auf die gleichen Glyphen verweist, wie ss00. Dafür muss ich ja nicht extra noch mal Composite-Glyphen anlegen. Das müsste in dem Fall auch gehen. Wobei bei Ersetzungen von Zeichen der Klasse ss00 natürlich auch alle Zeichen der Klasse ss09 betroffen sind. Wenn du also eine Zeichenfolge »z z.09« hast und willst nur das z gegen eine andere Varietät austauschen, kannst du nicht einfach »sub z by« schreiben. Solange du das im Hinterkopf behältst, ist eine Kopie der Klasse anstatt einer Kopie einer der neun Varietäten mit anderen Zeichennamen die elegantere weil sparsamere Lösung. vor 2 Stunden schrieb catfonts: dabei hatte ich zunächst die Wortlänge bis 20 Teichen ausgebaut, und bekam eine kryptische Fehlermeldung "Falsches Token (") " dabei hatte ich ja die Zeilen kopiert und nur zusätzliche @ss01 eingebaut. Erst als ich die Zahl wieder auf 17 Buchstaben verkürzt hatte, lief das wieder problemlos durch. Falsches Token? Könnte sich das nicht darauf beziehen, dass du versehentlich ein Zoll- anstatt eines Fußzeichens eingebaut hast?
Gast Arno Enslin Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor einer Stunde schrieb Þorsten: Noch eine Idee: Ließe sich der »Rotationsindex« vielleicht manuell dadurch beeinflussen, indem du neun identische Versionen irgendeines unsichtbaren Zeichens (was weiß ich, ZWJ, ZWNJ oder zero-width space?) erstellst und in die Rotationsklassen mit aufnimmst? Da könnte man bei Bedarf dann einfach ein paar von diesen Zeichen an den Zeilenanfang stellen und den Index so verändern? Das ginge. Damit würdest du aber auch den Inhalt verändern, auch wenn das hinzugefügte Zeichen nicht sichtbar ist. Eleganter wäre es, die Klassen @ss00 bis @ss08 bzw @ss09 in ss-Features ss01 bis ss09 bzw. ss10 zu packen (vor das salt-Feature) und sie durch die nächst höhere Klasse ersetzen zu lassen. Und wenn du willst, dass eine der mit demselben Wort beginnenden Zeilen mit einer anderen Zeichenvarietät beginnt, dann weist du dem ersten Zeichen der Zeile über CSS z. B. zusätzlich zum salt-Feature eines der ss-Features zu. Edit: Zumindest geht das ohne die Zusätzlichen Regeln, die ich in das salt-Feature eingebaut hatte. Aber eventuell kann man innerhalb der ss-Features auf den Rotationslookup verweisen. Edit 2: Also ich bekomme es auf die Schnelle nicht hin. Aber es müsste technisch machbar sein.
catfonts Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor 1 Minute schrieb Arno Enslin: Falsches Token? Könnte sich das nicht darauf beziehen, dass du versehentlich ein Zoll anstatt eines Fußzeichens eingebaut hast? Eindeutig nein, denn ich hatte in die zusätzlichen Zeilen ja nur ein zusätzliches ss01 eingefügt, an dem sub @ss00' hatte ich dabei ja nichts verändert. Ich hab mich nach dem " halb tot gesucht, dann die die letzten Zeilen der Wortlängenerkennung gestrichen, und dann eine nach der anderen neu aufgebaut, bis der Fehler erneut kam.
catfonts Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor einer Stunde schrieb Þorsten: Noch eine Idee: Ließe sich der »Rotationsindex« vielleicht manuell dadurch beeinflussen, indem du neun identische Versionen irgendeines unsichtbaren Zeichens (was weiß ich, ZWJ, ZWNJ oder zero-width space?) erstellst und in die Rotationsklassen mit aufnimmst? Da könnte man bei Bedarf dann einfach ein paar von diesen Zeichen an den Zeilenanfang stellen und den Index so verändern? Ich habe eine weit einfache Lösung gefunden. Ich habe ZWNJ nur ein mal ganz normal als Glyphe angelegt - nur ein mal, dann "space" und "uni200C" in die Klasse "blank" gepackt. und überall in der Prüfung auf Länge des ersten Wortes space durch @blank ersetzt. Damit hat dann ZWNJ die gleiche Wirkung wie das Leerzeichen. Damit kann man mit der Position im Wort frei spielen, und braucht nur jeweils ein ZWNJ ein zu tippen, um so das Wort zu verkürzen Seltsamerweise hat die ganze Zirkelei eine originelle Nebenwirkung: Versucht man am Zeilenanfang ein Leerreichen ein zu tippen, passiert auch dann nichts, tippt man mehr Leerzeichen ein, als noch in die vorherige Zeile passen. Das bremst Leute aus, die mit Leerzeichen zu formatieren versuchen.
Þorsten Geschrieben März 6, 2017 Geschrieben März 6, 2017 Super, prima, klasse! An die längenabhängige Ersetzung hatte ich gar nicht gedacht. Damit kann man dann ja alles machen, was man braucht. Lass mal ’nen Font zum Spielen rüber wachsen! (Versuch.ttf hatte übrigens auch wieder diesen merkwürdigen Bug, der die neusten Firefox-Versionen aus dem Konzept bringt. Aber einmal öffnen und gleich wieder speichern in FontForge hat geholfen.) In der Zwischenzeit hatte ich übrigens mal meine cvXX-Idee ausprobiert (in Pseudocode cv01(x) = x.001). Die klappt wie erwartet auch. Man kann so an jeder Stelle eine Variante erzwingen. Die automatische Ersetzung greift die manuelle Ersetzung dann auf und macht dann mit dem nächsten Index weiter. Aber mit deiner Lösung geht es ja auch und eben viel einfacher.
catfonts Geschrieben März 6, 2017 Geschrieben März 6, 2017 vor 1 Stunde schrieb Arno Enslin: Das müsste in dem Fall auch gehen. Wobei bei Ersetzungen von Zeichen der Klasse ss00 natürlich auch alle Zeichen der Klasse ss09 betroffen sind. Wenn du also eine Zeichenfolge »z z.09« hast und willst nur das z gegen eine andere Varietät austauschen, kannst du nicht einfach »sub z by« schreiben. Solange du das im Hinterkopf behältst, ist eine Kopie der Klasse anstatt einer Kopie einer der neun Varietäten mit anderen Zeichennamen die elegantere weil sparsamere Lösung. Ich muss nur die Features, die etwas wie »sub z by« machen nur VOR der Zirkelei setzen Was den FF-Bug anbelangt, das hatte ich mir schon gedacht. Diesen Versuch-Font hatte ich mir ja zum Test der OpenType-Spieleri in LibreOffice gebaut. Übrigens geht dieser Eingriff erst nach dem 2. Buchstaben und nur im ersten Wort. Hat das erste Wort nur 2 Buchstaben, gibt es keine Eingriffsmöglichkeit. Im Rest der Zeile ist der Bindehemmer eben der Bindehemmer, mehr nicht. Versuch.ttf
Gast Arno Enslin Geschrieben März 11, 2017 Geschrieben März 11, 2017 Als ich gerade an Erikas Farbband und das Rotationsfeature dachte, fiel mir das hier ein:
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