Was ist der praktische Unterschied zwischen einer Glyphe und einer Figur?

26

Ich habe diese Frage auf dem Typografie-Site-Vorschlag gesehen und es hat mich irritiert, dass ich die Antwort nicht kannte. Ich hatte Glyphen und Zeichen immer als austauschbar behandelt.


Nach dem Lesen einer Erklärung auf der Seite Unicode Character Encoding Model (Unicode-Zeichencodierungsmodell) habe ich ungefähr Folgendes verstanden:

  • Zeichen werden durch ihre Bedeutung in der Sprache, Glyphen, durch ihr Aussehen definiert . Die Ligatur für das ästhetische Kombinieren fi ist also eine Glyphe, aber zwei Zeichen.

Mein Glaube ist (bitte korrigieren Sie mich, wenn ich falsch liege), dass der praktische Unterschied sein würde:

  • Textparser, die sich nicht für die Ästhetik von Text interessieren, lesen Glyphen als ihre jeweiligen Zeichen. So:
    • Wenn Sie Text mit Glyphen kopieren und in einen Nur-Text-Editor einfügen, werden die Glyphen in die entsprechenden Zeichen umgewandelt (ein Ligatur-Glyphen wird zu fund i).
    • Jedes gut gemachte automatisierte System, das auf Textanalyse basiert (z. B. Suchmaschinen-Crawler, Bildschirmleser, Rechtschreibprüfer), würde die Glyphen als ihre jeweiligen Zeichen interpretieren.
    • Ein Zeichen kann viele Glyphen oder Glyphensätze enthalten. Ich möchte sagen, dass eine Glyphe nur ein Zeichen haben kann, aber dies ist eindeutig nicht richtig, da es auf dem verlinkten Artikel ein Beispiel von 3 Glyphen und Glyphensätzen gibt, die anscheinend jeweils einem Zeichen und einer Reihe von Zeichen entsprechen. Ich verstehe nicht ganz, wie das funktionieren könnte: Das bedeutet sicherlich, dass die Interpretation dieser Glyphen inkonsistent oder mehrdeutig ist und je nach Interpret variiert. (oder variiert es je nach Sprache oder Schriftart?)
    • Während Glyphenbrowser (z. B. der in Illustrator) den vollständigen Glyphensatz einer Schriftart enthalten, enthalten Zeichenzuordnungen (z. B. die Windows-Zeichenzuordnung) nur Zeichen, keine Glyphen, die mehrere Zeichen wie Ligaturen enthalten (etwas, das ich vorher nicht bemerkt habe).

Ich habe das Gefühl, dass ich fast da bin, aber ich habe irgendwo auf der Linie eindeutig etwas falsch verstanden: Nicht nur die Sache "Ein Glyphen, mehrere Zeichen", sondern auch das Kopieren und Einfügen von Verhalten mit Ligaturen entspricht nicht meinen Erwartungen:

  • Kopieren Sie die Ligatur aus Illustrator in dieses Eingabefeld: Fügt fiwie erwartet (zwei Zeichen) ein.
  • Fügen Sie den HTML-Code ein ( fi) - wird als Ligatur angezeigt, wenn Sie sich nicht in einem Codeblock befinden (fi - sieht in dieser Schriftart nicht wie eine Ligatur aus, wird aber angezeigt, wenn Sie versuchen, nur die Hälfte auszuwählen davon), und der Code, wenn in einem Codeblock ( fi), wie erwartet.
  • Kopieren Sie die gerenderte Nicht-Code-Block-Ligatur und fügen Sie sie wieder in das Eingabefeld ein: Fügt sie als Ligaturzeichen ein und rendert sie als Ligatur, unabhängig davon, ob sie sich in einem Code-Block befindet oder nicht (fi und ). Ebenso enthalten Wörter: fit misfits ( fit misfits) fügt als fit misfits ( fit misfits) ein. Vielleicht hängt es davon ab, ob der Ort, an dem es eingefügt wird, die verwendete Kodierung versteht?

Inwieweit verstehe ich das falsch? Kann jemand mich richtig stellen: eine klare Definition des Unterschieds zwischen Glyphen und Zeichen (wenn meine falsch ist oder verbessert werden kann) und klarere / genauere Beispiele als meine geben, was dies in der Praxis bedeutet ?

user56reinstatemonica8
quelle
2
Es wird viel komplizierter, wenn Sie Skripte wie Arabisch haben, in denen Sie Zeichen kombinieren.
Setzen Sie Monica - M. Schröder
1
@ MartinSchröder +1 Klingt wie der Eröffnungssatz einer ausgezeichneten Antwort ... :)
user56reinstatemonica8

Antworten:

4

Glyphen beziehen sich darauf, wie Text gerendert wird, Zeichen darauf, wie er interpretiert wird. Wenn Sie kopieren und einfügen, stehen in der Regel in der Quellanwendung mehrere Formate zur Auswahl. Klartext zerlegt die Ligatur in f und i. Das HTML-Format übersetzt sie möglicherweise in die von Ihnen angegebene Zeicheneinheit oder zerlegt sie auch in f und i.

Im Allgemeinen ist die Beziehung zwischen Zeichen und Glyphen n: m. In indischen Sprachen teilen sich einige Zeichen in zwei Glyphen, die an verschiedenen Stellen des Wortes stehen. In lateinischer Sprache wäre es am nächsten, é als zwei Glyphen (e und ´) wiederzugeben. Im Arabischen hat jedes Zeichen unterschiedliche Glyphen, abhängig von seiner Position innerhalb eines Wortes: Anfang, Mitte, Ende oder isoliert.

Die Übersetzung von Zeichen in Glyphen ist für jede Anwendung und die unterstützten typografischen Funktionen spezifisch. Für lateinischen Text war diese Übersetzung früher unkompliziert, aber OpenType-Schriftarten führten zusätzliche Funktionen wie Ligaturen, Swashes, alternative Formen, Kapitälchen usw. ein.

Aus praktischen Gründen beschäftigen Sie sich nur mit Glyphen, wenn Sie implementieren, wie eine Anwendung Text wiedergibt, wenn Sie eine Schriftart entwerfen oder wenn Sie eine OpenType-Funktion anwenden möchten, die einige Glyphen durch andere ersetzt (z. B. Ligaturen). Andernfalls sind Unicode-Codepunkte Ihr Freund.

user322483
quelle
Hallo user322483, willkommen bei GDSE und vielen Dank für Ihre Antwort. Wenn Sie Fragen haben, wenden Sie sich an die Hilfe oder senden Sie einen Ping-Befehl an einen von uns im Grafikdesign-Chat, sobald Ihre Reputation ausreicht (20). Tragen Sie weiter bei und genießen Sie die Seite!
Vincent
1
Sie schreiben: "Auf Arabisch hat jedes Zeichen unterschiedliche Glyphen, abhängig von seiner Position innerhalb eines Wortes: Anfangsbuchstabe, Mittelbuchstabe, Endbuchstabe oder Einzelbuchstabe." <--- Wären das nicht verschiedene Charaktere? Englisch hat A und a, aber im Computergespräch sind A und a verschiedene Zeichen. Jedes Symbol ist einem anderen Code zugeordnet. Hebräisch hat Chaf und Final Chaf (der Buchstabe Chaf am Ende eines Wortes sieht anders aus) und ich bin sicher, er wird im Computer als ein anderer Charakter bezeichnet.
Barlop
14

Ich glaube nicht, dass Ihr Verständnis falsch ist. Sie sehen nur Systeme, die versuchen, dem Benutzer zu helfen, indem Sie einfügen, was er für richtig hält. Da einige Ligaturen ('fi', 'fl') außerhalb von Schriftsatzsystemen häufig vorkommen, erkennt die Software, dass der Benutzer dieses Symbol wahrscheinlich nicht eingegeben hat, sondern dass eine andere App die eingegebenen Zeichen transformiert hat.

Kurz: Zeichen bezieht sich auf eine sprachliche Einheit. Glyphe bezieht sich auf eine entworfene Instanz dieser Einheit, unabhängig davon, ob es sich um Groß- oder Kleinbuchstaben, Kapitälchen, historische oder stilistische Varianten handelt.

Zivilkleidung
quelle
Beim Rechnen sind A und a unterschiedliche Zeichen. ASCII hat 128 Zeichen und der Begriff "Zeichen" enthält A und a als verschiedene Zeichen.
Barlop
Ingenieure verwenden viele Wörter, die nicht mit Präzedenzfällen in anderen Branchen übereinstimmen. Ihr ist ein gutes Beispiel.
Zivil
Wer hat sich zuerst die Begriffe "Charakter" und "Glyphe" ausgedacht? Grafikdesigner oder Computeringenieure? Ich hätte gedacht, die Computer kommen vor dem Grafikdesign. Aber es kann eine Druckindustrie geben, die in gewisser Weise dem Grafikdesign vorausging und in gewisser Weise Computern vorausging oder modernen Computern vorausging. Ich schätze, die Leute, die am besten auf das antworten könnten, was heute Grafikdesign ist, sind die Druckbranche, aber es gibt keinen Stapelwechsel in der Druckbranche. Aber es wäre interessant zu wissen, wer von wem etwas ausgeliehen hat und inwiefern es sich um den Begriff Charakter handelt.
Barlop
1
Die Typografie kam lange vor der Softwareentwicklung. Bitte posten Sie hier, wenn Sie Nachforschungen anstellen und die Ursprünge herausfinden. Ich vermute, dass es irgendwann im 17. Jahrhundert sein wird. Möglicherweise schon die ersten Typografen Mitte des 16. Jahrhunderts.
Zivil
6

Hier finden Sie einige Antworten, die gute Informationen zu Glyphen und Zeichen enthalten, die jedoch nicht wirklich die Ursache für Ihre Verwirrung beim Kopieren und Einfügen darstellen.

Zunächst ist Ihr Verständnis grundsätzlich richtig:

Zeichen werden durch ihre Bedeutung in der Sprache, Glyphen, durch ihr Aussehen definiert . Die Ligatur für die ästhetische Kombination von fi ist also eine Glyphe, aber zwei Zeichen.

Hervorzuheben ist, dass die Liste der Zeichen durch den Unicode-Standard definiert ist, der vom Unicode-Konsortium veröffentlicht wird, da sie die Autorität für die Codierung von Text in einem maschinenlesbaren Format besitzen. Die obige Definition ist im Wesentlichen die wichtigste Richtlinie, anhand derer die Mitglieder des Unicode-Konsortiums bestimmen, ob eine vorgeschlagene Hinzufügung zu Unicode ein einschlusswürdiges Zeichen oder eine Glyphe ist und von Zeichensatzrenderern behandelt werden sollte.

Ich erwähne dies , weil die Verwirrung Sie oben aufgrund der Tatsache erfahren war , dass es existiert mehr Ligatur Zeichen (nicht Glyphen ) in Unicode. Ist zum Beispiel U+FB01das Zeichen für die Ligatur: http://unicode.org/charts/PDF/UFB00.pdf

Ligaturzeichen in Unicode zu haben, entspricht nicht der obigen Definition, welche Art von Dingen als Zeichen in den Unicode-Standard aufgenommen werden sollten, da Ligaturen keine Bedeutung haben, die von der Zusammensetzung zweier anderer Zeichen unabhängig ist. Dies ist den Unicode-Nutzern natürlich bewusst, und die Unicode-FAQ zu Ligaturen gibt Folgendes zu:

Die vorhandenen Ligaturen dienen im Wesentlichen der Kompatibilität und dem Auslösen mit Nicht-Unicode-Zeichensätzen. Von ihrer Verwendung wird abgeraten.

Die Existenz dieses Charakters ist letztendlich die Quelle Ihrer Verwirrung.

In einer korrekt implementierten Software sollte beim Kopieren von Text immer die angegebenen Zeichen und nicht die Glyphen kopiert werden. Genau das ist in Ihren drei Beispielen der Fall.

1) Im ersten Beispiel haben Sie fund iin Illustrator eingegeben , wodurch eine einzelne Ligatur- Glyphe gerendert wurde . Wenn Sie dieses gerenderte Symbol ausgewählt und kopiert haben, hat Illustrator die Zeichen f( U+0066) und i( U+0069) korrekt in Ihre Zwischenablage kopiert .

2) Im zweiten Beispiel, getippt Sie den HTML - Code für die Ligatur Zeichen ( &#64257) in das Eingabefeld ein , und bekam richtig die Ligatur Glyphe die Ligatur darstellt Zeichen (. Da die zugrunde liegenden Charakter eigentlich die dunkle und relativ sinnlos Ligatur Zeichen I erwähnt Wenn Sie oben dieses Symbol auswählen, wird ein einzelnes Zeichen kopiert U+FB01.

3) Im dritten Beispiel, Sie kopieren die gerenderte Ligatur Zeichen U+FB01 , die in Teil 2 gemacht wurden, die als das Zeichen immer einfügen wird. Ihre Hauptverwirrung scheint in Bezug auf den Unterschied zwischen HTML-Entity-Codes und -Zeichen zu bestehen, insbesondere in Bezug darauf, wie sie in und außerhalb von Codeblöcken gerendert werden.

Der HTML-Entitätscode &#64257;besteht aus einer Zeichenfolge von 8 verschiedenen Zeichen. Der HTML-Renderer Ihres Webbrowsers ersetzt diese 8 Zeichen U+0026 U+0023 U+0036 U+0032 U+0035 U+0037 U+0023durch das einzelne Unicode-Zeichen U+FB01, das dann entsprechend gerendert wird. Das <code>Tag in HTML deaktiviert dieses Verhalten jedoch und lässt diese 8 Zeichen unverändert.

Wenn Sie aus gerendertem HTML kopieren, kopieren Sie die gerenderten Zeichen (die sich von den gerenderten Glyphen unterscheiden ). Wenn Sie also Ihre gerenderte HTML-Entität kopieren, wird das einzelne U+FB01Zeichen in Ihre Zwischenablage kopiert.

Wenn Sie das U+FB01Zeichen wieder in den HTML- Code einfügen , muss keine Ersetzung erfolgen. Dies bedeutet, dass das Zeichen als Ligatur gerendert wird, unabhängig davon, ob es in einen <code>Block fällt oder nicht .

Luftfrosch
quelle
1

Zeichen werden in Textdateien gespeichert, von Anwendungen verarbeitet und verschoben, während Glyphen ihre visuelle Darstellung darstellen.

Um ein klares Bild zu erhalten, sehen wir uns an, was passiert, wenn eine Anwendung versucht, eine Zeichenfolge auf dem Bildschirm zu rendern (etwas vereinfacht):

  • Die Anwendung hat zuerst die Textzeichenfolge gelesen, dh die Zeichenfolge, die auf der Festplatte oder im Speicher gespeichert ist.
  • Es wird dann an eine Textlayout-Engine gesendet, unter anderem mit der gewünschten Schriftart, Textsprache usw.
    • Die Textlayout-Engine öffnet im Grunde genommen die Schriftartdatei, fragt sie nach den Glyphen, die den einzelnen Zeichen entsprechen, und ersetzt sie durch Glyphen (z. B. durch fund idurch das Ligaturglyphen von fi) und positioniert sie (z. B. Kerning).
    • Am Ende hat die Layout-Engine eine Folge von Glyphen, ihre Positionen relativ zueinander und eine Zuordnung zwischen Eingabezeichen und den Ausgabe-Glyphen. Das Zuordnen von Zeichen zu Glyphen ist so, dass bekannt ist, dass die ersten beiden Zeichen im Wort filedem ersten Glyphen (der fiLigatur), dem dritten Zeichen zum zweiten Glyphen und dem vierten Zeichen zum dritten Glyphen entsprechen.
  • Eine Grafik-Rendering-Bibliothek wird dann verwendet, um diese Glyphen auf dem Bildschirm mit Formen aus der Schriftart zu zeichnen.
  • Wenn der Benutzer „Glyphen“ auf dem Bildschirm auswählt, prüft die Anwendung anhand der von der Layout-Engine bereitgestellten Glyphen-zu-Text-Zuordnung, welcher Teil des eingegebenen Texts dem entspricht, was der Benutzer auswählt, und sendet diesen Text in die Zwischenablage, wenn der Benutzer kopiert es.
  • Dasselbe passiert, wenn der Benutzer den Cursor in die Mitte des Texts einfügt und mit der Eingabe beginnt, die Zuordnung festlegt, wo im Eingabetext die neuen Zeichen eingefügt werden sollen, und der aktualisierte Text zur Verarbeitung und zum erneuten Zeichnen usw. an die Layout-Engine gesendet wird.
Khaled Hosny
quelle