Susan Födisch Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 Hallo an alle, ich bin gerade dabei eine Versalschrift zu gestalten, bei der es einige Ligaturen gibt. Darunter ist auch eine AR-Ligatur, die aber nur am Anfang eines Wortes gut aussieht. Wie ich normale Ligaturen einfüge weiß ich, aber wie schaffe ich es, dass sie nur am Anfang eines Wortes erscheint, aber an anderer Stelle die Buchstaben getrennt bleiben. Wäre großartig, wenn jemand darauf eine Antwort hätte. Viele Grüße!
Sebastian Nagel Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 Ich denke, du brauchst dafür den "ignore sub"-Befehl, um da alle Fälle abdecken zu können (denn zu prüfen, ob vor dem Wort ein Leerzeichen ist oder nicht, reicht nicht aus, und du kannst nicht auf "Textbeginn" oder "Zeilenanfang" prüfen). Das ganze funktioniert prinzipiell so: Die RA-Ligatur wird grundsätzlich *immer* angewendet, außer(!) der Fall tritt ein, dass sich vor der RA-Kombination noch ein Buchstabe befindet, dann tritt der Ignore in Kraft. Ich habe das in der Praxis noch nie verwendet, kann also keine Details dazu liefern ... Hier gibt's eine ähnliche Frage: http://typophile.com/node/19839#comment-123576 Der Link fürt direkt zu der Antwort, die funkionieren müsste (müsste, weil ich es nicht getestet habe, und in deinem speziellen Fall vielleicht Anpassung erfordert, da sich die Frage auf Swash-Anfänge bezieht, nicht auf Ligaturen). Alternativ kannst du dich auch in das init-feature einlesen und rausfinden, ob du es dafür "missbrauchen" könntest. Das Feature ist eigentlich für arabische Schrift gedacht, wo die Buchstaben 4 Formen (initial, medial, final und isoliert) gibt, es also auch darum geht, am Wortanfang eine andere Ersetzung zu machen als z.B. in der Mitte oder am Ende eines Wortes. Aber: Das funkioniert erst ab Indesign CS3!
Susan Födisch Geschrieben Juli 1, 2011 Themen-Ersteller Geschrieben Juli 1, 2011 (bearbeitet) Vielen Dank für deine Antwort. Ich werd es erst mal versuchen und mich melden, wenn ich was erreicht habe :) bearbeitet Juli 1, 2011 von Susan Födisch
Ralf Herrmann Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 Das ganze funktioniert prinzipiell so: Die RA-Ligatur wird grundsätzlich *immer* angewendet, außer(!) der Fall tritt ein, dass sich vor der RA-Kombination noch ein Buchstabe befindet, dann tritt der Ignore in Kraft. Ich habe das in der Praxis noch nie verwendet, kann also keine Details dazu liefern ... Ja, genau. Das sollte das beste sein und lässt sich eben direkt mit dem gewünschten Feature koppeln ohne andere Feature (wie INIT/MEDI/FINA) zu bemühen, von deren Unterstützung man ja nicht immer ausgehen kann.
Susan Födisch Geschrieben Juli 1, 2011 Themen-Ersteller Geschrieben Juli 1, 2011 (bearbeitet) Ich hätte vielleicht erwähnen sollen, dass ich auf diesem Gebiet eine absolute Anfängerin bin. Könntet ihr mir eventuell sagen, wie in dem Fall der Code aussehen muss? Ich hab grade alles mögliche versucht, hab aber immer nur Fehlermeldungen und eigentlich hab grade gar keinen Plan was ich da mache :D Wenn ich den Code aus dem Link auf mich übertrage, müsste er doch so aussehen, oder? feature calt { lookup caltstart{ ignore sub @letter @start' ; sub @start' by @start_liga ; }caltstart; } calt; In der Gruppe letter befinden sich alle Buchstaben, in der start_liga meine Ligatur. Aber wie muss die start-Gruppe aussehen? Denn wenn ich einfach nur [A R] reinschreibe, dann klappt's nicht. Schreibe ich nur A rein, ersetzt er mir alle As am Anfang eines Wortes mit der Ligatur. Ist bestimmt sowieso quatsch, was ich da gemacht hab. Was kann ich bloß tun? bearbeitet Juli 1, 2011 von Susan Födisch
Ralf Herrmann Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 Das war nur ein verwandtes Beispiel … In deinem Fall muss es so aussehen: ignore sub @uppercase A' R'; sub A' R' by A_R;[/CODE]Wichtig: Du brauchst eine Klasse mit Buchstaben, die die Ligatur ausschalten sollen, wenn sie vor der Ligatur stehen. Also alle Großbuchstaben, alle Buchstaben, alle Zeichen des Fonts etc. Diese Klasse musst du vorher im Klassen-Panel anlegen. Im obigen Beispiel habe ich sie beispielsweise uppercase genannt.
Susan Födisch Geschrieben Juli 1, 2011 Themen-Ersteller Geschrieben Juli 1, 2011 Jippie, es hat funktioniert! Ich bin aber auch bescheuert... Vielen Dank, fühl dich herzlich umarmt!
Sebastian Nagel Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 In deinem Fall muss es so aussehen: ignore sub @uppercase A' R'; sub A' R' by A_R;[/CODE] Nur zum Verständnis für mich: braucht es hier die ganzen ' , damit der ingnore-befehl weiß, was da *nicht* ersetzt werden soll? Eine normale, immer gültige Many-to-one-Ersetzung würde ja auch ohne diese funktionieren: [CODE]sub A R by A_R;[/CODE]
Susan Födisch Geschrieben Juli 1, 2011 Themen-Ersteller Geschrieben Juli 1, 2011 Ich weiß zwar auch nicht warum, aber ich hatte es ohne ' probiert und es ging nicht. Ich hatte beim Export immer Syntax-Fehler.
Ralf Herrmann Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 So steht’s zumindest offiziell bei Adobe …
Sebastian Nagel Geschrieben Juli 1, 2011 Geschrieben Juli 1, 2011 okay, ich denke mit diesem Beitrag zusammen hab ich's verstanden: http://typophile.com/node/60485#comment-359402 (der von Christopher Slye) Ich hab mich eigentlich nur gefragt, wie das "ignore sub" und das darauffolgende "sub" logisch miteinander verbunden sind. Sind sie aber gar nicht, das "ignore sub" ist nur ein Ausstiegspunkt der nichts macht, außer zu verhindern dass eine später folgende, für diesen spezielleren Fall nicht erwünschte sub-Regel überhaupt noch greift. Demnach müsste aber vermutlich auch das hier funktionieren: ignore sub @uppercase A' R'; sub A R by A_R; (das ganze wäre einfacher, wenn ich an meinem Rechner mit Fontlab sitzen würde :)
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