aspose.info
IT

EOT - Formato file font TrueType

Aggiornato

Che cos’è un file EOT?

Un file con estensione .eot è un font OpenType incorporato in un documento. Questi sono utilizzati principalmente nei file Web come una pagina Web. È stato creato da Microsoft ed è supportato dai prodotti Microsoft, incluso il file di presentazione PowerPoint .pps. Il file non è di uso primario ed è una sorta di documento di accompagnamento con il documento principale o la pagina web. Simile ai caratteri OTF, EOT supporta sia i contorni Postscript che TrueType per i glifi. I file EOT sono di dimensioni inferiori per il motivo che vengono compressi utilizzando la compressione LZ. EOT utilizza uno strumento Microsoft per creare un font da font TTF/OTF esistenti.

Breve storia

Il font EOT è stato presentato al W3C nel 2007 come parte di CSS3 ma a causa dei suoi requisiti per essere installato permanentemente su un sistema remoto è diventato il motivo del suo rifiuto. È stato ripresentato nel marzo 2008, ma alla fine il W3C ha scelto Web Font Format (WOFF) che è stato poi standardizzato.

Formato file EOT

I dettagli sul formato del file EOT sono disponibili nella pagina di invio W3 ed elabora la struttura utilizzata da questo formato di carattere. L’EOT consiste in un’unica struttura EMBEDDEDFONT che fornisce informazioni di base sufficienti sul nome del font e sui caratteri supportati. L’imballaggio di queste informazioni consente agli User Agent di evitare di decomprimere, decomprimere o installare il font se è già presente sulla macchina.

EMBEDDEDFONT Struttura

La struttura EMBEDDEDFONT ha subito tre revisioni, con l’aggiunta di dati aggiuntivi alla fine della struttura ad ogni revisione. L’ultima revisione della struttura EMBEDDEDFONT è illustrata di seguito.

Tipo di datiNome voceDescrizione
unsigned longEOTSizeLunghezza totale della struttura in byte (inclusi dati di stringhe e caratteri)
unsigned longFontDataSizeLunghezza del carattere OpenType (FontData) in byte
unsigned longVersioneNumero di versione di questo formato - 0x00020002
unsigned longFlagsFlag di elaborazione
byte[10]FontPANOSEIl valore PANOSE per questo carattere - Vedi https://learn.microsoft.com/en-us/typography/opentype/spec/os2#pan
byteCharsetIn Windows deriva da TEXTMETRIC.tmCharSet. Questo valore specifica il set di caratteri del font. DEFAULT_CHARSET (0x01) non indica alcuna preferenza. - Vedere https://learn.microsoft.com/en-us/windows/win32/api/wingdi/ns-wingdi-textmetrica
byteCorsivoSe il bit per ITALIC è impostato in OS/2.fsSelection, il valore sarà 0x01 - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#fss
unsigned longPesoIl valore di peso per questo font - Vedi https://learn.microsoft.com/en-us/typography/opentype/spec/os2#wtc
unsigned shortfsTypeDigitare i flag che forniscono informazioni sulle autorizzazioni di incorporamento - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#fst
unsigned shortMagicNumberNumero magico per file EOT - 0x504C. Utilizzato per verificare la corruzione dei dati.
unsigned longUnicodeRange1os/2.UnicodeRange1 (bit 0-31) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange2os/2.UnicodeRange2 (bit 32-63) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange3os/2.UnicodeRange3 (bit 64-95) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longUnicodeRange4os/2.UnicodeRange4 (bit 96-127) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ur
unsigned longCodePageRange1CodePageRange1 (bit 0-31) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#cpr
unsigned longCodePageRange2CodePageRange2 (bit 32-63) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/os2#cpr
unsigned longCheckSumAdjustmenthead.CheckSumAdjustment - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/head
unsigned longRiservato1Riservato - deve essere 0
unsigned longRiservato2Riservato - deve essere 0
unsigned longRiservato3Riservato - deve essere 0
unsigned longRiservato4Riservato - deve essere 0
unsigned shortPadding1Padding per mantenere l’allineamento lungo. Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortFamilyNameSizeNumero di byte utilizzati dall’array FamilyName
byteNomeFamiglia[DimensioneNomeFamiglia]Matrice di caratteri UTF-16 della lunghezza di byte DimensioneNomeFamiglia. Questa è la stringa della famiglia di caratteri in lingua inglese trovata nella tabella dei nomi del carattere (ID nome = 1) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding2Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortStyleNameSizeNumero di byte utilizzati da StyleName
byteStyleName[StyleNameSize]Matrice di caratteri UTF-16 la lunghezza dei byte StyleNameSize. Questa è la stringa della sottofamiglia di caratteri in lingua inglese trovata nella tabella dei nomi del carattere (ID nome = 2) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding3Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortVersionNameSizeNumero di byte utilizzati da VersionName
bytesVersionName[VersionNameSize]Matrice di caratteri UTF-16 della lunghezza dei byte VersionNameSize. Questa è la stringa della versione in lingua inglese trovata nella tabella dei nomi del carattere (ID nome = 5) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding4Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortFullNameSizeNumero di byte utilizzati da FullName
byteFullName[FullNameSize]Matrice di caratteri UTF-16 della lunghezza dei byte FullNameSize. Questa è la stringa del nome completo in lingua inglese trovata nella tabella dei nomi del carattere (ID nome = 4) - Vedere https://learn.microsoft.com/en-us/typography/opentype/spec/name
unsigned shortPadding5Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortRootStringSizeNumero di byte utilizzati dall’array RootString
byteRootString[RootStringSize]Matrice di caratteri UTF-16 la lunghezza dei byte RootStringSize.
unsigned longRootStringCheckSumValore CheckSum RootString. Vedere l’algoritmo per elaborare RootStringChecksum di seguito.
unsigned longEUDCCodePageValore codepage necessario per il supporto dei caratteri EUDC.
unsigned shortPadding6Il valore di riempimento deve essere sempre impostato su 0x0000.
unsigned shortSignatureSizeNumero di byte utilizzati dall’array Signature. Attualmente riservato e dovrebbe essere impostato su 0x0000.
byteFirma[SignatureSize]Attualmente riservato. Se SignatureSize è 0x0000 non c’è lunghezza per questa matrice.
unsigned longEUDCFlagsElaborazione flag per il font EUDC. I valori tipici potrebbero essere TTEMBED_XORENCRYPTDATA e TTEMBED_TTCOMPRESSED.
unsigned longEUDCFontSizeNumero di byte utilizzati dall’array Signature.
byteEUDCFontData[EUDCFontSize]Numero di byte utilizzati per i dati del carattere EUDC. Se EUDCFontSize è 0x00000000 non c’è lunghezza per questa matrice.
byteFontData[FontDataSize]I dati del carattere per questo file EOT. I dati possono essere compressi o criptati XOR come indicato dai flag di elaborazione.

Riferimenti

Vedi anche