Bitmap-färgglyfgrader
GetRegisteredColorGlyphInfo och DrawRegisteredColorGlyph stöder bitmap-färgglyfer lagrade i CBDT/CBLC- eller sbix-tabeller
Val av grad
TargetPixelsPerEm väljer den grad med minsta absoluta ppem-avståndet, medan noll väljer den största tillgängliga graden för maximal behållen detalj
CBDT/CBLC-val stöder index-subtabellformaten 1, 2, 3 och 5 plus PNG-bildformaten 17, 18 och 19
sbix-val validerar varje gradfönster mot maxp.numGlyphs, accepterar PNG-, JPEG- och TIFF-grafikposter och löser upp dupe-poster genom en begränsad 16-nivås kedja med cykelavvisning
Placering och avkodning
THPDFOpenTypeColorGlyphInfo.PixelsPerEmX och PixelsPerEmY rapporterar den valda gradsstorleken, medan OriginOffsetX och OriginOffsetY rapporterar bitmapens nedre-vänstra offset från glyfbaslinjen i gradpixlar
Nativ PNG-avkodning bevarar sin alfakanal och avger en bild-mjukmask, medan nativ JPEG-avkodning avger icke-transparent RGB-data
Placering skalar avkodade pixlar med FontSize / PixelsPerEmY och tillämpar den lagrade baslinjens ursprung så att blandade vektor- och bitmappglyfer riktas in konsekvent
TIFF-poster och varje icke-stött eller icke-avkodbart nyttolast fortsätter genom OnColorGlyphRasterize med sin ursprungliga MIME-typ och byten
Resursgränser
Parsern accepterar högst 4,096 sbix-grader, 16 duplicera-indirektioner och 64 MiB per extraherat bitmapp-tillgång samt avvisar trunkerade, överlappande, utanför-intervall- eller signatur-mismatchade poster före sidutdata