Quelle ' est la différence pratique entre un ' glyph ' et un ' caractère '?

Jai vu cette question sur la proposition du site Typography et cela ma dérangé que je ne lai pas fait « Je ne connais pas la réponse. Jai toujours traité » glyphe « et » caractère « comme interchangeables.


Après avoir lu une explication sur lUnicode Page du modèle de codage de caractères , je comprends à peu près ceci:

  • Les caractères sont définis par leur signification dans la langue, les glyphes, par leur apparence . Donc, la ligature pour combiner esthétiquement fi est un glyphe, mais deux caractères.

Donc, ma conviction est (veuillez me corriger si je  » m faux) que la différence pratique serait:

  • Les analyseurs de texte qui ne sont pas intéressés par lesthétique du texte liront les glyphes comme leurs caractères respectifs. Donc:
    • Si vous copiez et collez du texte contenant des glyphes dans un éditeur de texte brut, les glyphes seraient convertis en leurs caractères respectifs (a le glyphe de ligature deviendrait f et i )
    • Tout système automatisé bien conçu basé sur lanalyse de texte (par exemple, les moteurs de recherche, les lecteurs décran, les vérificateurs orthographiques) interpréterait les glyphes comme leurs caractères respectifs.
    • Un caractère peut en avoir plusieurs glyphes ou jeux de glyphes. Je veux dire quun glyphe ne peut avoir quun seul caractère, mais ce nest clairement pas juste car il y a un exemple sur larticle lié de 3 glyphes et jeux de glyphes qui semblent correspondre chacun à un caractère et à un jeu de caractères. Je ne vois pas vraiment comment cela pourrait fonctionner: cela signifie sûrement quil y aura incohérence ou ambiguïté dans la façon dont ces glyphes sont interprétés, variant selon linterprète? (Ou est-ce que cela varie selon la langue ou la police?)
    • Alors que les navigateurs de glyphes (par exemple celui dIllustrator) contiennent le jeu de glyphes complet dune police, les cartes de caractères (par exemple la table de caractères Windows) ne contiennent que des caractères, pas des glyphes qui sont des caractères multiples comme des ligatures (quelque chose que je navais pas remarqué auparavant)

Jai limpression dêtre presque là, mais jai clairement mal compris quelque chose quelque part sur la ligne: pas seulement le truc « Un glyphe plusieurs caractères », mais aussi, le comportement de copier-coller avec des ligatures nest pas « t tout à fait ce à quoi je mattendais:

  • Copiez la ligature dIllustrator à cette zone de saisie: colle comme fi (deux caractères) comme prévu .
  • Collez le code HTML correspondant () – saffiche comme ligature lorsquil nest pas dans un bloc de code (fi – qui dans cette police ne ressemble pas beaucoup à une ligature, mais vous » ll voir en est un si vous essayez den sélectionner seulement la moitié), et le code dans un bloc de code (fi), comme prévu.
  • Copiez et collez la ligature restituée sans bloc de code dans la zone de saisie: colle comme caractère de ligature, et restitue comme ligature, quelle soit ou non dans un bloc de code (fi et ). De même, les mots le contenant: fi t mis fi ts (fit misfits) colle comme ajustements ajustés (fit misfits). Cela dépend peut-être du fait que l’endroit où il est collé comprend l’encodage utilisé?

À quel point ma compréhension de cela est-elle erronée? Quelquun peut-il me redresser: en indiquant clairement définition de la différence entre les glyphes et les caractères (si le mien est faux ou peut être amélioré), et donner des exemples plus clairs / plus précis que le mien de ce que cela signifie dans la pratique ?

Commentaires

  • Cela devient beaucoup plus compliqué lorsque vous avez des scripts comme larabe où vous combinez des caractères.
  • @MartinSchr ö der +1 Sonne comme la première phrase dune excellente réponse … 🙂

Réponse

Les glyphes se rapportent à la façon dont le texte est rendu, les caractères à la façon dont il est interprété. Lorsque vous copiez & coller, lapplication source propose généralement plusieurs formats. Le texte brut décomposera la fi ligature en f et i, le format HTML peut la traduire dans lentité char que vous avez citée ou également la décomposer en f et i.

En général, la relation entre les caractères et les glyphes est n: m. Dans les langues indiennes, certains caractères se divisent en deux glyphes qui sont placés à différents endroits du mot. En latin, le plus proche de cette situation serait de rendre é comme deux glyphes (e et ´).En arabe, chaque caractère a des glyphes différents selon sa position dans un mot: initial, milieu, final ou isolé.

La traduction des caractères en glyphes est spécifique à chaque application et aux fonctionnalités typographiques quelle prend en charge. Pour le texte latin, cette traduction était simple, mais les polices OpenType introduisaient des fonctionnalités supplémentaires telles que les ligatures, les swashes, les formes alternatives, les petites majuscules, etc.

Pour des raisons pratiques, vous ne vous préoccupez que des glyphes lorsque vous implémentez la manière dont une application rend le texte, ou lorsque vous concevez une police, ou lorsque vous souhaitez appliquer une fonctionnalité OpenType qui remplace certains glyphes par dautres (par exemple des ligatures). Sinon, les points de code Unicode sont votre ami.

Commentaires

  • Bonjour user322483, bienvenue sur GDSE et merci pour votre réponse. Si vous avez des questions, veuillez consulter le Centre daide ou envoyez un ping à lun de nous dans Chat de conception graphique une fois que votre réputation est suffisante (20). Continuez à contribuer et profitez du site!
  • Vous écrivez  » En arabe, chaque caractère a des glyphes différents en fonction de sa position dans un mot: initial, milieu, final ou isolé .  » < — Ne ‘ que ce soit des caractères différents. Langlais a A et a, mais dans le langage informatique, A et a sont des caractères différents. chaque glyphe est mappé à un code différent. Lhébreu a le chaf et le dernier chaf (la lettre chaf à la fin dun mot, a un aspect différent) et je ‘ je suis sûr quil ‘ s désigné comme un caractère différent en informatique.

Réponse

Je ne « pense pas que votre compréhension est incorrecte vous » ne voyez que des systèmes qui essaient daider lutilisateur en collant ce quil pense vouloir. Étant donné que certaines ligatures («fi», «fl») sont assez courantes en dehors des systèmes de composition, le logiciel reconnaît que lutilisateur na probablement pas saisi ce glyphe, plutôt quune autre application a transformé ses caractères saisis.

En bref : Le caractère fait référence à une unité linguistique. Glyphe fait référence à une instance conçue de cette unité, quelle soit en majuscule, minuscule, petite majuscule, historique ou variante stylistique.

Commentaires

  • En informatique, A et a sont des caractères différents. ASCII comporte 128 caractères et le terme caractère comprend A et a comme caractères distincts.
  • Les ingénieurs utilisent beaucoup de mots qui ne ‘ t saligner sur les précédents dautres secteurs. Le vôtre en est un bon exemple.
  • qui a proposé le terme  » caractère  » et  » glyph  » f premier? graphistes ou ingénieurs informaticiens? i ‘ d ai pensé que les ordinateurs sont venus avant la conception graphique. Mais il peut y avoir une industrie de limprimerie qui a précédé la conception graphique et qui a précédé les ordinateurs dune certaine manière ou a précédé les ordinateurs modernes. Je suppose que les personnes qui pourraient le mieux répondre pour ce qui est maintenant la conception graphique, cest lindustrie de limpression, mais il ny a ‘ aucun stackexchange dans lindustrie de limpression. Mais il serait ‘ intéressant de savoir qui a emprunté à qui et de quelle manière le terme Personnage.
  • La typographie est venue longtemps avant génie logiciel. Veuillez poster ici si vous entreprenez la recherche et trouvez les origines. Je suppose que ce sera au 17e siècle. Peut-être dès les premiers typographes au milieu du 16.

Réponse

Il y a quelques réponses ici qui donnent de bonnes informations sur les glyphes et les caractères, mais ils ne traitent pas vraiment de la source de votre confusion en ce qui concerne le copier-coller.

Tout d’abord, votre compréhension est fondamentalement correcte:

Les caractères sont définis par leur signification dans la langue, les glyphes, par leur apparence . Donc, la ligature pour combiner esthétiquement fi est un glyphe, mais deux caractères.

Il convient de souligner que la liste des caractères est définie par lUnicode standard, qui est publiée par le Consortium Unicode, en raison du fait quils « sont lautorité sur le codage de texte dans un format lisible par machine. La définition ci-dessus est essentiellement la principale directive que les membres du Consortium Unicode utilisent pour déterminer si certains ont proposé ou non ajouter ion en Unicode est un caractère et donc digne dêtre inclus, ou un glyphe et devrait être manipulé par les moteurs de rendu de polices.

Je mentionne cela parce que la confusion que vous avez expérimenté ci-dessus était dû au fait quil existe plusieurs caractères de ligature (et non glyphes ) en Unicode.Par exemple, U+FB01 est le caractère de la fi ligature: http://unicode.org/charts/PDF/UFB00.pdf

Avoir des caractères ligatures en Unicode nest pas vraiment dans lesprit de la définition ci-dessus des types de choses à inclure dans la norme Unicode en tant que caractères, car les ligatures nont pas vraiment de signification indépendante de la composition de deux autres personnages. Les gens Unicode en sont naturellement conscients, et la FAQ Unicode sur les ligatures l’admet:

Les ligatures existantes existent essentiellement pour la compatibilité et les allers-retours avec les jeux de caractères non Unicode. Leur utilisation est déconseillée.

Lexistence de ce personnage est finalement la source de votre confusion.

Dans un logiciel correctement implémenté, la copie le texte doit toujours copier les caractères qui ont été spécifiés, pas les glyphes , et cest exactement ce qui se passe dans vos trois exemples.

1) Dans le premier exemple, vous avez tapé f et i dans Illustrator, ce qui a rendu une seule ligature glyphe . Lorsque vous avez sélectionné et copié ce glyphe rendu, Illustrator a correctement copié f (U+0066) et i (U+0069) caractères dans votre presse-papiers.

2) Dans le deuxième exemple, vous avez tapé le code HTML du caractère de ligature (&#64257) dans la zone de saisie, et correctement obtenu le glyphe de ligature représentant le caractère de la ligature (. Puisque le caractère sous-jacent est en fait le caractère de ligature obscur et relativement inutile que jai mentionné ci-dessus, sélectionnez ce glyphe copiera un seul caractère U+FB01.

3) Dans le troisième exemple, vous « copiez le caractère de ligature U+FB01 qui a été rendu dans la partie 2, qui sera toujours collé comme ce caractère. Votre principale confusion semble concerner la différence entre les codes dentité HTML et les caractères, en particulier en ce qui concerne la façon dont ils sont rendus à lintérieur et à lextérieur des blocs de code.

Le code dentité HTML &#64257; est une chaîne de 8 caractères distincts. Le moteur de rendu HTML de votre navigateur Web remplace ces 8 caractères U+0026 U+0023 U+0036 U+0032 U+0035 U+0037 U+0023 avec le seul caractère Unicode U+FB01, quil restitue ensuite de manière appropriée. Cependant, la balise <code> en HTML désactive ce comportement, laissant ces 8 caractères tels quels.

Lorsque vous copiez le HTML rendu, vous copiez le rendu caractères (qui sont différents des glyphes rendus). Ainsi, lorsque vous copiez votre entité HTML rendue, le caractère unique U+FB01 est copié dans votre presse-papiers.

Lorsque vous collez le U+FB01 caractère de retour dans le HTML, aucune substitution ne doit avoir lieu, ce qui signifie que le caractère est rendu comme une ligature indépendamment du fait quil relève ou non dun <code> bloc.

Réponse

Les caractères sont ce qui est stocké dans les fichiers texte, traités par les applications, et déplacé, tandis que les glyphes sont leur représentation visuelle.

Pour avoir une image claire, voyons ce qui se passe lorsquune application tente de rendre une chaîne de texte à lécran (de manière un peu simplifiée):

  • Lapplication lit dabord la chaîne de texte, que ce soit la chaîne de caractères stockée sur le disque ou en mémoire.
  • Elle lenvoie ensuite à un moteur de mise en page de texte, parmi certains dautres propriétés telles que la police souhaitée, la langue du texte, etc.:
    • T Le moteur de mise en page de texte ouvre essentiellement le fichier de police, lui demande le ou les glyphes correspondant à chaque caractère et effectue une substitution de glyphe (comme le remplacement du glyphe pour f et i avec le glyphe de ligature fi) et le positionnement (comme le crénage).
    • À la fin, le moteur de mise en page a une séquence de glyphes, leurs positions les unes par rapport aux autres et un mappage entre les caractères dentrée et les glyphes de sortie. Le mappage caractère / glyphe est fait pour quil sache que les deux premiers caractères du mot file correspondent à deux du premier glyphe (la ligature fi ), du 3ème caractère au 2ème glyphe et du 4ème caractère au 3ème glyphe.
  • Une bibliothèque de rendu graphique est ensuite utilisée pour «dessiner» ces glyphes à lécran en utilisant formes de la police.
  • Lorsque lutilisateur sélectionne «glyphes» à lécran, lapplication consulte alors le mappage glyphe-texte fourni par le moteur de mise en page pour trouver quelle partie du texte dentrée correspond à ce que le lutilisateur sélectionne et envoie ce texte dans le presse-papiers lorsque lutilisateur le copie.
  • La même chose se produit lorsque lutilisateur insère le curseur au milieu du texte et commence à taper, le mappage détermine où dans le texte dentrée insérer les nouveaux caractères et le texte de mise à jour est envoyé au moteur de mise en page à processus et redessiné et ainsi de suite.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *