Formulaires demi-chasse et pleine chasse - Halfwidth and fullwidth forms

Une invite de commande ( cmd.exe ) avec localisation coréenne, affichant des caractères demi-chasse et pleine chasse

En informatique CJK (chinois, japonais et coréen), les caractères graphiques sont traditionnellement classés en pleine largeurTaïwan et Hong Kong :全形; en CJK :全角) et en demi - chasseTaïwan et Hong Kong :半形; en CJK :半角) personnages. Contrairement aux polices à espacement fixe , un caractère à demi-chasse occupe la moitié de la largeur d'un caractère à pleine chasse, d'où le nom.

Formes demi-chasse et pleine chasse est également le nom d'un bloc Unicode U+FF00–FFEF, à condition que les anciens encodages contenant à la fois des caractères demi-chasse et pleine chasse puissent avoir une traduction sans perte vers/depuis Unicode.

Raisonnement

Les caractères qui apparaissent à la fois dans JIS X 0201 (simple octet) et JIS X 0208 / JIS X 0213 (double octet) ont à la fois une demi-largeur et une pleine largeur dans Shift JIS .

À l'époque de l' informatique en mode texte , les caractères occidentaux étaient normalement disposés dans une grille à l'écran, souvent 80 colonnes sur 24 ou 25 lignes. Chaque caractère était affiché sous la forme d'une petite matrice de points , souvent d'environ 8 pixels de large, et un SBCS (jeu de caractères à un octet) était généralement utilisé pour coder les caractères des langues occidentales.

Pour des raisons esthétiques et de lisibilité, il est préférable que les caractères Han soient approximativement de forme carrée, donc deux fois plus large que ces caractères SBCS à largeur fixe. Comme ceux-ci étaient généralement codés dans un DBCS (jeu de caractères à double octet), cela signifiait également que leur largeur à l'écran dans une police à double espacement était proportionnelle à leur longueur en octets. Certains terminaux et programmes d'édition ne pouvaient pas gérer les caractères à deux octets commençant par des colonnes impaires, seulement des colonnes paires (certains ne pouvaient même pas mettre des caractères à deux octets et à un octet sur la même ligne). Ainsi, les ensembles DBCS incluaient généralement des caractères romains et des chiffres également, à utiliser avec les caractères CJK sur la même ligne.

D'un autre côté, les premiers calculs japonais utilisaient une page de code à un octet appelée JIS X 0201 pour katakana . Ceux-ci seraient rendus à la même largeur que les autres caractères à un octet, ce qui en ferait des caractères kana demi-largeur plutôt que des kana normalement proportionnés. Bien que la norme JIS X 0201 elle-même n'ait pas spécifié l'affichage demi-largeur pour le katakana, cela est devenu la caractéristique visuelle distinctive dans Shift JIS entre le katakana JIS X 0201 à un octet et le JIS X 0208 à deux octets . Certaines pages de codes IBM utilisaient un traitement similaire pour le jamo coréen , basé sur le code Hangul à N octets et sa traduction EBCDIC .

En Unicode

Pour la compatibilité avec les jeux de caractères existants qui contenaient à la fois des versions demi-largeur et pleine largeur du même caractère, Unicode a alloué un seul bloc à U+FF00–FFEF contenant les caractères de « largeur alternative » nécessaires. Cela inclut une version pleine largeur de tous les caractères ASCII et certaines ponctuations non ASCII telles que le signe Yen, des versions demi-largeur de katakana et hangul , et des versions demi-largeur de certains autres symboles tels que des cercles. Seuls les caractères nécessaires pour un aller-retour sans perte vers les jeux de caractères existants ont été alloués, plutôt que (par exemple) de créer une version pleine largeur de chaque caractère accentué latin.

Unicode attribue à chaque point de code une propriété "Largeur d'Asie de l'Est" . Cela peut être:

Propriétés des caractères Unicode basées sur la largeur
Abréviation Nom La description
W Large Caractère naturellement large, par exemple Hiragana .
N / A Étroit Caractère naturellement étroit, par exemple alphabet latin de base ISO .
F Pleine largeur Variante large avec normalisation de la compatibilité vers un caractère naturellement étroit, par exemple une écriture latine pleine largeur.
H Demi-largeur Variante étroite avec normalisation de la compatibilité au caractère naturellement large, par exemple kana demi-largeur . Inclut U+20A9 ( ) comme exception.
UNE Ambigu Caractères inclus dans les codes DBCS d'Asie de l'Est mais aussi dans les codes SBCS européens, par exemple l'alphabet grec . Le comportement duospace peut par conséquent varier.
N Neutre Caractères qui n'apparaissent pas dans les codes DBCS d'Asie de l'Est, par exemple Devanagari .

Les émulateurs de terminaux peuvent utiliser cette propriété pour décider si un caractère doit consommer une ou deux "colonnes" lors de la détermination des onglets et de la position du curseur.

En OpenType

OpenType a les balises de fonctionnalité "fwid", "halt", "hwid" et "vhal" à utiliser pour fournir la forme pleine largeur ou demi-chasse d'un caractère.

Voir également

Les références

Liens externes