aspose.info
HU

CFF2 - Compact Font File Format version 2

Frissítve

Mi az a CFF2 fájl?

A CFF2 fájlformátum a CFF fájlformátum 2.0-s verziója, és lehetővé teszi a karakterjelek körvonalainak és a CFF fájlformátumhoz hasonló metaadatok hatékony tárolását. A CFF2 abban különbözik a CFF-től, hogy egy OpenType betűtípussal összefüggésben CFF2 címkével ellátott „sfnt” táblaként használható. Nem használható önálló programként, és más OpenType táblák adataitól függ.

CFF2 fájlformátum

A CFF2 fájlformátum specifikációi részleteket tartalmaz a belső adatelrendezésről, adattípusokról, táblázatokról és a fájlformátummal kapcsolatos egyéb belső információkról. Fejlesztői referenciaként hivatkozhat rá. Néhány részlet ezekről a következők.

Adatelrendezés

A CFF2 fájlformátum bináris adatai logikailag több különálló adatstruktúraként vannak elrendezve. A bináris adatokon belüli elrendezés a következő táblázatban látható.

BejegyzésMegjegyzések
FejlécRögzített hely
Top DICTFix hely
Global Subr INDEXFix hely
VáltozatÜzlet
FDSelectCsak akkor jelenjen meg, ha egynél több Font DICT van a Font DICT INDEX-ben.
Betűtípus DICT INDEX
A DICT betűtípus tömbjeA Font DICT INDEX.
Privát DICTEgy betűtípusonként DICT.

Csak az első három struktúra fix helyeken alapul. A fennmaradó részeket eltolásokkal érik el, és ezek sorrendje módosítható.

Adattípusok

A CFF2 fájlformátum a következő adattípusokat használja.

NévTartományLeírás
uint80-tól 255-ig8 bites előjel nélküli szám
uint160-tól 65535-ig16 bites előjel nélküli szám
uint320–429496729532 bites előjel nélküli szám
Eltolásváltozó1, 2, 3 vagy 4 bájtos eltolások (az Index táblázat OffSize mezőjében megadva)
OffSize1-től 4-igAz 1 bájtos előjel nélküli szám az Eltolás mező vagy mezők méretét határozza meg

Az összes többbájtos numerikus adatot és eltolási mezőt nagyméretű bájt sorrendben tárolja. A CFF2 formátum mentes a kitöltési bájtoktól, mivel nem tartja be az igazítási korlátozásokat.

DICT adatok

A CFF2 fájlok a betűtípusszótár adatait kulcs-érték párokként tartalmazzák, kompakt tokenizált formátumban. A szótárkulcsok 1 vagy 2 bájtos operátorként, a szótárértékek pedig változó méretű numerikus operandusokként vannak kódolva. Három struktúra használja a DICT adatformátumot: “Top DICT”, “Font DICT” és “Privát DICT”. Számos, változó méretű egész szám típusú operandus van meghatározva és kódolva a következő táblázat szerint (az operandus első bájtja b0, második b1 és így tovább).

Méretb0 tartományÉrtéktartományÉrtékszámítás
132–246-107 - +107b0 - 139
2247–250+108 - +1131(b0 - 247) * 256 + b1 + 108
2251–254-1131 - -108-(b0 - 251) * 256 - b1 - 108
328-32768 - +32767b1 « 8
529-(2^31) - +(2^31 - 1)b1 « 24 | b2 « 16 | b3 « 8 | b4

Fejléc

A bináris adat egy fejléccel kezdődik, amelynek formátuma az alábbi táblázatban látható.

TípusNévLeírás
uint8főVerzióFormázza a fő verziót. 2.
uint8minorVersionFormázza a kisebb verziót. Állítsa nullára.
uint8headerSizeFejléc mérete (byte).
uint16topDictLengthA Top DICT struktúra hossza bájtban.

Hivatkozások

Lásd még