ResolveIndexedColor metoda
Razvrstava token indeksirane boje i razrješava konkretnu ARGB vrijednost kada je ponudi paleta radne knjige ili razrješitelj sustavskih boja koji dostavlja pozivatelj
Metoda je dostupna i na IXLSWorkbook i na TXLSXWorkbook i ne mijenja stanje radne knjige
Sintaksa
function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; out AResolution: TXLSIndexedColorResolution): Boolean; overload; function ResolveIndexedColor( AIndex: Int64; ASpace: TXLSIndexedColorSpace; ARole: TXLSIndexedColorRole; ASystemResolver: TXLSTryResolveSystemColor; out AResolution: TXLSIndexedColorResolution): Boolean; overload;
Prostori indeksa
| Prostor | Protumačenje |
|---|---|
xicsPublicColorIndex | Javni indeksi palete 1..56 preslikavaju se na slotove BIFF palete 8..63; predznačni ili nepredznačni xlColorIndexAutomatic razvrstava se kao automatski |
xicsBiffIcv | BIFF indeksi provjeravaju se prema odabranoj ulozi: boje fontova i komentara upotrebljavaju podskup IcvFont, boje okvira i ispuna podskup IcvXF, boje grafikona podskup IcvChart, a opća pretraga cijelu tablicu Icv |
xicsOoxmlIndexed | OOXML indeksi 0..63 adresiraju indeksiranu paletu, 64 i 65 identificiraju prednji i pozadinski boju sustava, a veće vrijednosti nevažeće su |
Rezultat
| Polje | Značenje |
|---|---|
Kind | xickPalette, xickAutomatic, xickSystem ili xickInvalid |
RawIndex | Nepromijenjena ulazna vrijednost |
PaletteSlot | Fizički slot palete s bazom nula, ili -1 kada token nije utemeljen na paleti |
SystemColorRole | Semantička sustavska uloga, uključujući tekst prozora, pozadinu prozora, tekst grafikona, pozadinu grafikona, neutralnu boju grafikona ili tekst oblačića |
ARGB | Normalizirana konkretna boja kada je HasResolvedColor istinit |
HasResolvedColor | True samo kada je RGB vrijednost dalo pretraživanje palete, boja fiksnog formata ili izričit povratni poziv |
Povratna vrijednost funkcije podudara se s HasResolvedColor; razvrstavanje ostaje dostupno u AResolution kada funkcija vrati false
Ugovor o sustavnim bojama
Kratko preopterećenje nikada ne čita trenutačnu radnu površinu Windowsa te stoga ostavlja automatske i od okruženja ovisne sustavske boje nerazriješenima
Dugo preopterećenje prosljeđuje i TXLSSystemColorRole i TXLSIndexedColorRole u ASystemResolver, dopuštajući pozivatelju primjenu izričite pravilnika za korisničko sučelje, izvoz ili iscrtavanje bez sučelja
Ispis povratnog poziva mora upotrebljavati redoslijed kanala $AARRGGBB; nul bajt alfe normalizira se u $FF, dok rezultat povratnog poziva false token ostavlja razvrstanim, ali nerazriješenim
Windows COLORREF upotrebljava redoslijed kanala $00BBGGRR i mora se pretvoriti u $AARRGGBB prije nego ga povratni poziv vrati
Nevažeći tokeni nikada ne pozivaju povratni poziv, a fiksni BIFF token neutralne boje grafikona razrješava se u neprozirnu crnu bez povratnog poziva
Primjer
if Workbook.ResolveIndexedColor(12, xicsPublicColorIndex, Resolution) then UseArgb(Resolution.ARGB); if not Workbook.ResolveIndexedColor($40, xicsBiffIcv, Resolution) then Assert(Resolution.Kind = xickSystem);