Grafici Paint COLR v1

GetRegisteredColorGlyphInfo valida il glifo base selezionato e restituisce un grafo aciclico diretto piatto in THPDFOpenTypeColorGlyphInfo.COLRv1Paints

COLRv1RootPaintIndex identifica la radice e UnitsPerEm fornisce la scala usata da DrawRegisteredColorGlyph

Record del grafo

THPDFCOLRv1PaintKind distingue livelli, riempimenti solidi, gradienti lineari, gradienti radiali, gradienti a sweep, clip dei glifi, glifi a colore riutilizzabili, trasformazioni e compositi

THPDFCOLRv1Paint memorizza gli indici dei figli, gli ID dei glifi, la geometria del gradiente, i dati di trasformazione, la modalità di composito e i colori risolti

THPDFCOLRv1ColorStop memorizza un offset di stop ordinato, il colore CPAL risolto, l'alfa e l'indice della voce della tavolozza

THPDFCOLRv1Transform memorizza i sei valori della trasformazione affine del paint

THPDFCOLRv1PaintArray, THPDFCOLRv1PaintIndexArray e THPDFCOLRv1ColorStopArray espongono il grafo e i suoi figli e stop a lunghezza variabile a Delphi e C++Builder

Sicurezza e fallback

Gli offset dei paint vengono controllati rispetto alle loro basi corrette relative alla tabella prima della costruzione del grafo

I grafi sono limitati a 4.096 nodi di paint e 64 livelli e i cicli falliscono prima che venga emesso un operatore di pagina

L'output nativo copre l'ordinamento comune di sorgente e destinazione più la famiglia di modalità blend PDF, mentre le altre operazioni Porter-Duff richiamano OnColorGlyphRasterize quando assegnato