OpenType est un format de polices informatiques vectorielles . Dérivé de TrueType , il conserve la structure de base de ce dernier, mais y ajoute de nombreuses structures de données complexes pour décrire le comportement typographique . OpenType est une marque déposée de Microsoft Corporation .
Le cahier des charges a germé chez Microsoft, Adobe Systems y contribuant également au moment de l'annonce publique en 1996.
Grâce à leur large disponibilité et à leur flexibilité typographique, notamment leur capacité à gérer les comportements variés de tous les systèmes d'écriture du monde , les polices OpenType sont couramment utilisées sur les principales plateformes informatiques.
Histoire
L'origine d'OpenType remonte à la tentative de Microsoft d'obtenir une licence pour la technologie typographique avancée GX Typography d' Apple au début des années 1990. Ces négociations ayant échoué, Microsoft a décidé de développer sa propre technologie, baptisée « TrueType Open » en 1994. Adobe a rejoint Microsoft dans ces efforts en 1996, en ajoutant la prise en charge de la technologie de contour des glyphes utilisée dans ses polices Type 1.
Cette initiative conjointe visait à remplacer les formats de police TrueType d'Apple et PostScript Type 1 d'Adobe , et à créer un système plus expressif capable de gérer une typographie fine et la complexité de nombreux systèmes d'écriture à travers le monde. Les deux entreprises ont combiné les technologies sous-jacentes des deux formats et ajouté de nouvelles extensions destinées à pallier leurs limitations. Le nom OpenType a été choisi pour cette technologie commune, qu'elles ont annoncée plus tard dans l'année.
Format de police ouvert
Adobe et Microsoft ont continué à développer et à perfectionner OpenType au cours de la décennie suivante. Fin 2005, OpenType a entamé sa migration vers une norme ouverte sous l'égide de l' Organisation internationale de normalisation (ISO), au sein du groupe MPEG , qui avait précédemment (en 2003) adopté OpenType 1.4 par référence pour MPEG-4 . L'adoption de cette nouvelle norme a été officiellement approuvée en mars 2007 sous la référence ISO /IEC 14496-22 (MPEG-4 Partie 22), appelée Open Font Format (OFF, à ne pas confondre avec Web Open Font Format ), parfois désignée sous le nom de « Spécification Open Font Format » (OFFS). La norme initiale était techniquement équivalente à la spécification OpenType 1.4, avec les adaptations linguistiques nécessaires pour l'ISO. La deuxième édition de la norme OFF a été publiée en 2009 (ISO/IEC 14496-22:2009) et déclarée « techniquement équivalente » à la spécification de format de police OpenType. Depuis, les spécifications OFF et OpenType sont maintenues à jour. OFF est une norme libre et accessible au public.
En 2001, des centaines de polices OpenType étaient disponibles sur le marché. Adobe a achevé la conversion de l'intégralité de sa bibliothèque de polices au format OpenType vers la fin de 2002. Environ 10 000 polices OpenType étaient alors disponibles, dont un tiers environ provenait de la bibliothèque Adobe. En 2006, toutes les grandes fonderies de caractères et de nombreuses fonderies mineures développaient des polices au format OpenType.
Séquences de variation Unicode
La version 3.2 d'Unicode (publiée en 2002) a introduit les sélecteurs de variantes comme mécanisme d'encodage pour représenter des formes de glyphes particulières pour les caractères. Unicode n'a cependant pas précisé comment les moteurs de rendu de texte devaient prendre en charge ces séquences. Fin 2007, les séquences de variantes de la collection Adobe-Japan1 ont été enregistrées dans la base de données idéographiques Unicode, faisant naître un réel besoin de solution OpenType. Ceci a conduit au développement de la cmapsous-table Format 14, introduite dans la version 1.5 d'OpenType.
polices de couleur
Le 14 septembre 2016, Microsoft a annoncé la sortie d'OpenType version 1.8. Cette annonce a été faite conjointement avec Adobe, Apple et Google lors de la conférence ATypI à Varsovie. OpenType version 1.8 a introduit les « variations de police OpenType », qui ajoutent des mécanismes permettant à une seule police de prendre en charge de nombreuses variations de conception. Les polices utilisant ces mécanismes sont généralement appelées « polices variables ».
OpenType Font Variations réintroduit des techniques précédemment développées par Apple dans TrueType GX et par Adobe dans les polices à maîtres multiples . L’idée commune de ces formats est qu’une seule police inclut des données décrivant de multiples variations du contour d’un glyphe (parfois appelées « maîtres »), et qu’au moment de l’affichage du texte, le générateur de caractères est capable d’interpoler ou de « fusionner » ces variations pour obtenir une gamme continue de variations de contour supplémentaires.
Le concept de polices entièrement paramétriques avait été exploré de manière plus générale par Donald E. Knuth dans le système METAFONT , introduit en 1978 Ce système et ses successeurs n'ont jamais été largement adoptés par les créateurs de caractères professionnels ni par les logiciels commerciaux . Les formats TrueType GX et Multiple Master, prédécesseurs directs d'OpenType Font Variations, ont été introduits dans les années 1990, mais n'ont pas non plus rencontré un grand succès. Adobe a par la suite abandonné la prise en charge du format Multiple Master . En 2016, cependant, le paysage industriel avait évolué à plusieurs égards. En particulier, l'émergence des polices Web et des appareils mobiles a suscité un intérêt pour la conception adaptative et la recherche de solutions permettant de proposer davantage de variantes typographiques dans un format compact. De plus, alors que les années 1990 ont été marquées par une concurrence féroce dans le domaine des technologies typographiques, souvent qualifiée de « guerre des polices » OpenType Font Variations a été développé de manière collaborative, impliquant plusieurs grands fournisseurs.
Les variations de polices sont pleinement intégrées à OpenType 1.8, permettant ainsi d'utiliser la plupart des fonctionnalités existantes en combinaison avec les variations. En particulier, les variations sont prises en charge pour les contours des glyphes TrueType et CFF, pour l'indication des caractères TrueType, ainsi que pour les mécanismes de mise en page OpenType. Les seules parties d'OpenType pour lesquelles les variations ne sont pas prises en charge, mais pourraient s'avérer utiles, sont la table « SVG » pour les glyphes de couleur et la table « MATH » pour la mise en page des formules mathématiques. La table « SVG » utilise des documents XML intégrés, et aucune amélioration concernant la variation des éléments graphiques au sein de ces documents n'a été proposée. Cependant, l'amélioration de la table COLR dans OpenType 1.9 a fourni un format vectoriel pour les glyphes de couleur prenant en charge les variations.
OpenType 1.8 utilisait des tables initialement définies par Apple pour TrueType GX (les tables avar, cvar, fvar et gvar). Il introduisait également plusieurs nouvelles tables, dont une nouvelle table pour la version 2 du format CFF (CFF2), ainsi que d'autres nouvelles tables ou des ajouts aux tables existantes afin d'intégrer des variations dans d'autres parties du format de police (les tables HVAR, MVAR, STAT et VVAR ; des ajouts aux tables BASE, GDEF et name).
Description
Les contours CFF utilisent des courbes de Bézier cubiques.
OpenType utilise la structure générale sfnt d'une police TrueType, mais ajoute plusieurs options smartfont qui améliorent les capacités typographiques et linguistiques de la police.
Les données de contour des glyphes d'une police OpenType peuvent se présenter sous deux formats : soit des contours au format TrueType dans un tableau, soit des contours au format CFF ( Compact Font Format ) dans un tableau. (Le nom du tableau « CFF » comporte quatre caractères et se termine par un espace.) Les données de contour CFF sont basées sur le format de police PostScript Type 2. Cependant, la spécification OpenType (avant la version 1.8) ne prend pas en charge l'utilisation de contours PostScript dans un fichier de police TrueType Collection. À partir de la version 1.8, les deux formats sont pris en charge dans la police renommée « OpenType Collection ».glyfCFF␣
Pour de nombreuses applications, comme la mise en page, le format des données de contour importe peu. En revanche, pour d'autres, comme la rastérisation , il est essentiel. La norme OpenType ne spécifie pas ce format : elle est compatible avec plusieurs normes existantes. On utilise parfois des termes comme « OpenType (PostScript) » (également appelé « OpenType de type 1 » ou « OpenType CFF ») ou « OpenType (TrueType) » pour indiquer le format de contour d'un fichier de police OpenType donné.
OpenType possède plusieurs caractéristiques distinctives :
- Il prend en charge l' encodage de caractères Unicode (ainsi que d'autres), ce qui lui permet de prendre en charge n'importe quel système d'écriture (ou plusieurs systèmes d'écriture à la fois).
- Peut contenir jusqu'à 65 536 glyphes.
- Fonctionnalités avancées de mise en page typographique qui définissent le positionnement et le remplacement des glyphes rendus. Les fonctionnalités de remplacement incluent les ligatures ; les fonctionnalités de positionnement incluent l’approche , le placement des marques et la spécification de la ligne de base .
- Fichiers de polices multiplateformes, utilisables sans modification sur les systèmes Mac OS, Microsoft Windows et Unix/Linux.
- Si aucun glyphe supplémentaire ni aucune fonctionnalité typographique étendue ne sont ajoutés, les polices OpenType CFF peuvent être considérablement plus petites que leurs homologues de type 1.
Prise en charge d'OpenType
Support romain de base
La quasi-totalité des applications et des systèmes d'exploitation modernes prennent en charge les caractères romains de base et fonctionnent avec les polices OpenType aussi bien qu'avec d'autres formats plus anciens. Outre la prise en charge de base des caractères romains, elles offrent une compatibilité étendue avec les langues grâce à Unicode , la prise en charge des systèmes d'écriture complexes tels que l'arabe et les langues indiennes , ainsi qu'une prise en charge typographique avancée pour les langues à écriture latine comme l'anglais .
Windows 3.1 et toutes les versions ultérieures de Windows prennent en charge les polices OpenType TT (.ttf). Windows 2000 et les versions ultérieures prennent en charge les polices OpenType PS (.otf). Adobe Type Manager pourrait ajouter une prise en charge de base des caractères romains pour les polices OpenType PS dans Windows 95 , 98 ou Me .
Assistance linguistique étendue
La prise en charge étendue des langues via Unicode, pour OpenType et TrueType, est présente dans la plupart des applications Microsoft Windows (notamment Microsoft Office Publisher , la plupart des applications Adobe et Microsoft Office 2003, à l'exception de Word 2002), CorelDRAW X3 et versions ultérieures, ainsi que dans de nombreuses applications Mac OS X, y compris celles d'Apple comme TextEdit , Pages et Keynote . Elle est également largement prise en charge par les systèmes d'exploitation libres, tels que Linux (par exemple, dans des applications multiplateformes comme AbiWord , Gnumeric , Calligra Suite , Scribus , OpenOffice.org 3.2 et versions ultérieures, etc.).
La prise en charge OpenType des systèmes d'écriture complexes est jusqu'à présent principalement présente dans les applications Microsoft Office , telles que Microsoft Word et Microsoft Publisher . Adobe InDesign offre des fonctionnalités OpenType étendues pour le japonais , mais ne prend pas directement en charge les systèmes d'écriture du Moyen-Orient ou indiens. Une version distincte d'InDesign, compatible avec des systèmes d'écriture comme l'arabe et l'hébreu, est toutefois disponible. De nombreuses applications Adobe Creative Suite 4, dont InDesign, Photoshop et Illustrator, proposent des fonctionnalités non documentées permettant la prise en charge des langues du Moyen-Orient, indiennes et autres, mais celles-ci ne sont pas officiellement prises en charge par Adobe et nécessitent des modules complémentaires tiers pour accéder à l'interface utilisateur.
typographie avancée
La prise en charge typographique avancée des langues à écriture latine est apparue pour la première fois dans les applications Adobe telles qu'Adobe InDesign , Adobe Photoshop et Adobe Illustrator . QuarkXPress 6.5 et les versions antérieures n'étaient pas compatibles Unicode. Par conséquent, dans ces versions de QuarkXPress, les textes contenant des caractères autres que WinANSI ou MacRoman ne s'affichaient pas correctement avec une police OpenType (ni avec d'autres formats de police Unicode). Cependant, QuarkXPress 7 offrait une prise en charge similaire à celle d'Adobe. CorelDRAW de Corel a introduit la prise en charge des fonctionnalités typographiques OpenType dans sa version X6. Mellel , un traitement de texte pour Mac OS X développé par Redlers, revendique des fonctionnalités typographiques équivalentes à celles d'InDesign, mais étend également la prise en charge aux écritures de droite à gauche ; c'est également le cas de les fonctionnalités typographiques avancées d'OpenType . Ces fonctionnalités sont uniquement implémentées dans les logiciels de PAO haut de gamme . Le moteur de texte de Windows Presentation Foundation (WPF) , une implémentation en code managé d'OpenType, est la première API Microsoft Windows à exposer les fonctionnalités OpenType aux développeurs de logiciels, prenant en charge les polices OpenType TrueType et OpenType CFF ( Compact Font Format ). Il prend en charge des fonctionnalités typographiques avancées telles que les ligatures , les chiffres elzéviriens , les variantes ornées , les fractions , les exposants et les indices , les petites capitales , la substitution de glyphes , les lignes de base multiples , les formes de caractères alternatives contextuelles et stylistiques, le crénage, la justification au niveau de la ligne , les caractères ruby , etc. Les applications WPF bénéficient automatiquement de la prise en charge de ces fonctionnalités. Les ligatures OpenType sont accessibles dans Microsoft Office Word 2010.
Windows 7 a introduit DirectWrite , une API DirectX native accélérée par le matériel pour le rendu de texte avec prise en charge du texte multiformat, des polices vectorielles indépendantes de la résolution, de ClearType , des fonctionnalités typographiques OpenType avancées, du texte Unicode complet, de la prise en charge de la mise en page et des langues, ainsi que des API de rendu de glyphes de bas niveau.
Sous macOS, les applications compatibles AAT fonctionnant sous macOS 10.4 et versions ultérieures, notamment TextEdit et Keynote, bénéficient d'une prise en charge étendue d'OpenType. La prise en charge d'OpenType par Apple dans macOS 10.4 incluait la plupart des fonctionnalités typographiques avancées nécessaires aux langues à écriture latine , telles que les petites capitales , les chiffres elzéviriens et divers types de ligatures, mais ne prenait pas encore en charge les variantes contextuelles, les formes positionnelles ni le réarrangement des glyphes, contrairement à la bibliothèque Uniscribe de Microsoft sous Windows. Par conséquent, macOS 10.4 ne prenait pas en charge les écritures arabes ou indiennes via OpenType (bien que ces écritures soient entièrement prises en charge par les polices AAT existantes). macOS 10.5 a amélioré la prise en charge d'OpenType et prend en charge les polices OpenType arabes. Progressivement, la prise en charge typographique d'OpenType s'est améliorée dans les versions plus récentes de macOS (par exemple, macOS 10.10 gère mieux les substitutions de glyphes contextuelles longues).
Bitstream Panorama , moteur de mise en page et de composition de texte de Bitstream Inc. , prend entièrement en charge les polices OpenType compactes et standard asiatiques, ainsi que les polices arabes, hébraïques, indiennes, thaïlandaises et plus de 50 autres langues. L'application est compatible avec les principales tables OpenType nécessaires à la mise en page, telles que BASE, la définition des glyphes (GDEF), le positionnement des glyphes (GPOS) et la substitution des glyphes (GSUB). Panorama offre également une prise en charge complète des fonctionnalités typographiques avancées, comme les ligatures, les ornements, les petites capitales, les ornements, les ordinaux, les exposants, les caractères elzéviriens, le crénage, les fractions, etc.
Dans les environnements logiciels libres tels que Linux , le rendu OpenType est assuré par le projet FreeType , inclus dans les implémentations libres du système X Window, comme X.org . La gestion complexe du texte est assurée soit par pango (qui fait appel à HarfBuzz ), soit par Qt . Les systèmes XeTeX et LuaTeX permettent aux documents TeX d'utiliser des polices OpenType, ainsi que la plupart de leurs fonctionnalités typographiques. La version Linux de LibreOffice 4.1 et les versions ultérieures prennent en charge de nombreuses fonctionnalités typographiques OpenType, car elles utilisent désormais la bibliothèque de mise en forme de texte HarfBuzz, plus sophistiquée.
Fichier de fonctionnalités OpenType
Lors de la création d'une police OpenType, les propriétés (autres que le contour) peuvent être définies à l'aide de texte lisible par l'homme et enregistré au format de fichier de fonctionnalités OpenType d'Adobe. Les fichiers de fonctionnalités OpenType ont généralement un nom se terminant par une .feaextension. Ces fichiers peuvent être compilés en un conteneur de police binaire ( .ttf) .otfà l'aide d' Adobe Font Development Kit for OpenType (AFDKO), FontLab , FontForge , Balises de mise en page