aspose.info
FR

EOT - Format de fichier de police TrueType

Mis à jour le

Qu’est-ce qu’un fichier EOT ?

Un fichier avec l’extension .eot est une police OpenType intégrée dans un document. Ceux-ci sont principalement utilisés dans les fichiers Web tels qu’une page Web. Il a été créé par Microsoft et est pris en charge par les produits Microsoft, y compris le fichier de présentation PowerPoint .pps. Le fichier n’est pas d’usage principal et est une sorte de document d’accompagnement avec le document principal ou la page Web. Semblable aux polices OTF, EOT prend en charge les contours Postscript et TrueType pour les glyphes. Les fichiers EOT sont plus petits car ils sont compressés à l’aide de la compression LZ. EOT utilise un outil Microsoft pour créer une police à partir de polices TTF/OTF existantes.

Bref historique

La police EOT a été soumise au W3C en 2007 dans le cadre de CSS3, mais en raison de ses exigences d’installation permanente sur un système distant, elle a été rejetée. Il a été soumis à nouveau en mars 2008, mais le W3C a finalement choisi Web Font Format (WOFF) qui a alors été normalisé.

Format de fichier EOT

Les détails du format de fichier EOT peuvent être trouvés sur page de soumission W3 et élabore la structure utilisée par ce format de police. L’EOT se compose d’une seule structure EMBEDDEDFONT qui fournit suffisamment d’informations de base sur le nom de la police et les caractères pris en charge. Le conditionnement de ces informations permet aux agents utilisateurs d’éviter de décompresser, décompresser ou installer la police si elle est déjà présente sur la machine.

Structure EMBEDDEDFONT

La structure EMBEDDEDFONT a subi trois révisions, avec ajout de données supplémentaires à la fin de la structure à chaque révision. La dernière révision de la structure EMBEDDEDFONT est illustrée ci-dessous.

Type de donnéesNom de l’entréeDescription
unsigned longEOTSizeLongueur totale de la structure en octets (y compris les données de chaîne et de police)
unsigned longFontDataSizeLongueur de la police OpenType (FontData) en octets
unsigned longVersionNuméro de version de ce format - 0x00020002
unsigned longDrapeauxDrapeaux de traitement
byte[10]FontPANOSELa valeur PANOSE pour cette police - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#pan
byteCharsetSous Windows, ceci est dérivé de TEXTMETRIC.tmCharSet. Cette valeur spécifie le jeu de caractères de la police. DEFAULT_CHARSET (0x01) n’indique aucune préférence. - Voir https://learn.microsoft.com/en-us/windows/win32/api/wingdi/ns-wingdi-textmetrica
byteItalicSi le bit pour ITALIC est défini dans OS/2.fsSelection, la valeur sera 0x01 - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#fss
unsigned longWeightLa valeur de poids pour cette police - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#wtc
unsigned shortfsTypeIndicateurs de type qui fournissent des informations sur l’intégration des autorisations - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#fst
unsigned shortMagicNumberNuméro magique pour le fichier EOT - 0x504C. Utilisé pour vérifier la corruption des données.
unsigned longUnicodeRange1os/2.UnicodeRange1 (bits 0-31) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange2os/2.UnicodeRange2 (bits 32-63) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange3os/2.UnicodeRange3 (bits 64-95) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange4os/2.UnicodeRange4 (bits 96-127) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longCodePageRange1CodePageRange1 (bits 0-31) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#cpr
unsigned longCodePageRange2CodePageRange2 (bits 32-63) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/os2#cpr
unsigned longCheckSumAdjustmenthead.CheckSumAdjustment - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/head
unsigned longRéservé1Réservé - doit être 0
unsigned longRéservé2Réservé - doit être 0
unsigned longRéservé3Réservé - doit être 0
unsigned longRéservé4Réservé - doit être 0
unsigned shortPadding1Remplissage pour maintenir l’alignement long. La valeur de rembourrage doit toujours être définie sur 0x0000.
unsigned shortFamilyNameSizeNombre d’octets utilisés par le tableau FamilyName
byteFamilyName[FamilyNameSize]Tableau de caractères UTF-16 d’une longueur de FamilyNameSize octets. Il s’agit de la chaîne de la famille de polices en anglais trouvée dans le tableau des noms de la police (nom ID = 1) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding2La valeur de remplissage doit toujours être définie sur 0x0000.
unsigned shortStyleNameSizeNombre d’octets utilisés par StyleName
byteStyleName[StyleNameSize]Tableau de caractères UTF-16 d’une longueur de StyleNameSize octets. Il s’agit de la chaîne de la sous-famille de polices en anglais trouvée dans le tableau des noms de la police (nom ID = 2) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding3La valeur de remplissage doit toujours être définie sur 0x0000.
unsigned shortVersionNameSizeNombre d’octets utilisés par VersionName
bytesVersionName[VersionNameSize]Tableau de caractères UTF-16 d’une longueur de VersionNameSize octets. Il s’agit de la chaîne de version en anglais trouvée dans le tableau des noms de la police (nom ID = 5) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding4La valeur de remplissage doit toujours être définie sur 0x0000.
unsigned shortFullNameSizeNombre d’octets utilisés par le FullName
byteFullName[FullNameSize]Tableau de caractères UTF-16 d’une longueur de FullNameSize octets. Il s’agit de la chaîne de nom complet en anglais trouvée dans le tableau des noms de la police (nom ID = 4) - Voir https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding5La valeur de remplissage doit toujours être définie sur 0x0000.
unsigned shortRootStringSizeNombre d’octets utilisés par le tableau RootString
byteRootString[RootStringSize]Tableau de caractères UTF-16 d’une longueur de RootStringSize octets.
unsigned longRootStringCheckSumValeur de la somme de contrôle de la chaîne racine. Voir l’algorithme pour traiter RootStringChecksum ci-dessous.
unsigned longEUDCCodePageValeur de page de code nécessaire pour la prise en charge des polices EUDC.
unsigned shortPadding6La valeur de remplissage doit toujours être définie sur 0x0000.
unsigned shortSignatureSizeNombre d’octets utilisés par le tableau Signature. Actuellement réservé et doit être défini sur 0x0000.
byteSignature[SignatureSize]Actuellement réservé. Si SignatureSize est 0x0000, il n’y a pas de longueur pour ce tableau.
unsigned longEUDCFlagsDrapeaux de traitement pour la police EUDC. Les valeurs typiques peuvent être TTEMBED_XORENCRYPTDATA et TTEMBED_TTCOMPRESSED.
unsigned longEUDCFontSizeNombre d’octets utilisés par le tableau Signature.
byteEUDCFontData[EUDCFontSize]Nombre d’octets utilisés pour les données de police EUDC. Si EUDCFontSize est 0x00000000, ce tableau n’a pas de longueur.
byteFontData[FontDataSize]Les données de police pour ce fichier EOT. Les données peuvent être compressées ou cryptées XOR comme indiqué par les indicateurs de traitement.

Références

Voir aussi