Le but des collections OpenType / CFF2 de ce référentiel (AKA Variable Font Collections) est de simuler le format de déploiement de notre source open source Han Sans et Source Han Serif Pan-CJK Fonts comme des polices variables, qui sont disponibles pour les tests à des purges afin que les consommateurs de portes, la signification des Os, les applications, les moteurs de mise en page et les bibliothèques, puissent supporter de tels fonts. Cela s'applique également aux versions NOTO CJK de marque Google. Notez que les polices Source OpenType / CFF2 (AKA Variable Fonts) sont dans le répertoire "OTF" et ne sont incluses qu'à des fins de référence. Les collections de polices variables devraient se comporter de la même manière que les polices variables individuelles.
Contrairement à Source Han Sans / Noto Sans CJK version 2.000 qui prend en charge cinq langues par défaut, ces polices de test prennent en charge un sixième. Cette sixième langue est une troisième saveur du chinois traditionnel, pour Macao SAR, dont les conventions régionales sont proches de celles de Hong Kong SAR, mais avec suffisamment de différences pour justifier des polices distinctes. Nous sommes également en train d'enregistrer une balise de langue OpenType, ZHTM, à cet effet.
Les six langues prises en charge sont les suivantes, et les codes de la région à deux lettres entre parenthèses sont utilisés dans les noms de police, ainsi que pour les glyphes digraphes en boîte qui sont cartographiés à partir des cartographies 45K des polices:
| Langue | Code de région à deux lettres |
|---|---|
| japonais | JP |
| Corée (ROK) | Krot |
| Chinois simplifié, PRC (Chine) | CN |
| Chinois traditionnel, Roc (Taiwan) | Tw |
| Chinois traditionnel, Hong Kong SAR | HK |
| Chinois traditionnel, Macao SAR | MO |
Les tableaux «Nom» incluent des chaînes de nom de menu localisées qui n'incluent pas les codes de la région à deux lettres, car les noms localisés impliquent les langues. Seules les chaînes de nom de menu de langue anglaise incluent les codes de la région à deux lettres.
En termes de caractéristiques de police variables, les deux axes de conception suivants sont inclus:
La plage de poids est de 200 (extralight) à 900 (lourde), et la plage de largeur est de 100% (avance horizontale par défaut de 1000 unités) à 75% (compressée).
Chaque tableau «CFF2» comprend 65 535 glyphes (GIDS 0 à 65534). Le tableau ci-dessous indique les glyphes qui sont attribués, ce qui peut varier selon le visage:
| Gids & GID GAMES | Sans Serif | Serif |
|---|---|---|
| 0 | .notdef | même |
| 1 | Espace (cartographié à partir de U + 0020 et U + 00A0; aka Uni0020) | même |
| 2 | UNI3000 (mappé de U + 2003 et U + 3000) | même |
| 3 à 10924 | Digraphe en boîte "JP" | Digraphe en boîte "Mo" |
| 10925 à 21846 | DIGRAPHE "KR" en boîte | Digraphe en boîte "HK" |
| 21847 à 32768 | Digraphe en boîte "CN" | Digraphe en boîte "TW" |
| 32769 à 43690 | Digraphe en boîte "TW" | Digraphe en boîte "CN" |
| 43691 à 54612 | Digraphe en boîte "HK" | DIGRAPHE "KR" en boîte |
| 54613 à 65534 | Digraphe en boîte "Mo" | Digraphe en boîte "JP" |
Les tableaux «CFF2» ont été subro-réinisés à l'aide du dernier outil AFDKO TX et mesurent environ 330K. Leurs versions non subrutinisées sont d'environ 31 Mo (SANS Serif) et de 62 Mo (Serif). Cette réduction massive de taille a été possible car la couverture des six glyphes fonctionnels qui représentent les codes de la région à deux lettres a été élargie pour remplir 10 922 GID.
Les tableaux «CFF2» comprennent sept éléments FDARRAY, et les affectations GID sont les suivantes:
| Élément fdarray | Gammes gid |
|---|---|
| 0 | 0 à 2 |
| 1 | 3 à 10924 |
| 2 | 10925 à 21846 |
| 3 | 21847 à 32768 |
| 4 | 32769 à 43690 |
| 5 | 43691 à 54612 |
| 6 | 54613 à 65534 |
Les polices Sans Serif comprennent 44 806 mappages, et celles de Serif comprennent 44 782, ce qui signifie 20 moins. Les 20 mappages exclus sont pour U + 2780 ➀ à travers U + 2793 ➓, qui correspondent à des caractères de style Sans Serif. Les 20 caractères d'agnostiques de style correspondants qui sont pris en charge par les deux faces sont U + 2460 ① via U + 2469 ⑩ et U + 2776 ❶ via U + 277F ❿.
Le tableau «CMAP» pour chacune des six langues mappe le code de près de 45k pointe vers les GID qui correspondent aux digraphes de la région à deux lettres en boîte. Le mappage est séquentiel, en termes d'attribution de GID dans chaque gamme GID de 10 922 glyphes. En d'autres termes, le code 45K Points est à la carte des Gids 3 à 10924 dans les polices "JP" (SANS SANSIF) et "MO" (Serif) de manière séquentielle. Pendant le processus d'attribution des mappages de manière séquentielle, lorsque GID + 10924 est atteint, la valeur GID est réinitialisée à GID + 3. Ce processus se poursuit jusqu'à ce que les points de code 45K mappent un GID avec la plage de 10 922 GID. Les mappages pour U + 0020, U + 00A0, U + 2003 et U + 3000 sont à base spéciale et mappent les GIDS 1 ou 2.
Le fichier utf32-mappings.txt spécifie les points de code 44 806 en tant que valeurs UTF-32.
La seule fonctionnalité OpenType qui est incluse dans le tableau «GSUB» ( Substitution des glyphes ) est «LOCL» ( formulaires localisés ) qui peuvent être utilisés pour remplacer les glyphes à la langue par défaut par celles qui sont sélectionnées via le marquage de la langue dans les applications qui prennent en charge de telles fonctionnalités, telles que Adobe Indegn et les navigateurs modernes. Par exemple, si l'utilisation de la police "MO" (MACAO SAR), Adobe InDesign prend en charge le marquage du langage pour les cinq autres langues, ce qui signifie qu'il est possible d'afficher les six digraphes ensemble. (InDesign ne prend pas encore en charge le marquage du langage pour le chinois traditionnel tel qu'il est utilisé dans Macao SAR).
Deux des collections de polices variables sont spécifiques au visage, ce qui signifie un pour Sans Serif (AKA Source Han Sans ), et un autre pour Serif (AKA Source Han Serif ):
Les 13 tables «SFNT» suivantes sont partagées dans chaque collection de polices variables spécifiques au visage:
Les cinq tables «SFNT» suivantes ne sont pas partagées, avec le nombre d'instances indiquées dans Parenthese:
| Tableau | Instances |
|---|---|
| Gsoub | 6 |
| OS / 2 | 2 |
| cmap | 6 |
| tête | 6 |
| nom | 6 |
La troisième collection de polices variables comprend les 12 polices variables, et à part doubler le nombre des tables «SFNT» qui ne sont pas partagées, la seule différence est qu'il y a deux tables «CFF2»:
Les 12 polices de variable source ont été construites en compilant les fichiers XML de style TTX .
Pour construire les collections de polices variables à partir de leurs sources de polices variables, vous devez avoir installé le kit de développement de polices Adobe pour OpenType (AFDKO). Les outils AFDKO sont largement utilisés pour le développement de polices aujourd'hui et font partie de la plupart des applications d'éditeur de polices.
Dans ce référentiel, tous les fichiers nécessaires sont inclus dans le répertoire "OTF" pour construire les collections de polices variables, et le fichier build-otc.sh fournit les lignes de commande utilisées.
Pour toute suggestion de modifications, veuillez créer un nouveau problème à considérer.