HotXLS-dokumentasjon

ScanIndexedColorUsage metode

Returnerer en deterministisk oversikt over alle 56 fysiske palettslotter i arbeidsboken og de indekserte fargedefinisjonene og -referansene som bruker dem

Metoden er tilgjengelig på både IXLSWorkbook og TXLSXWorkbook og endrer ikke palett, celler, stiler, betingede formater eller arbeidsboktilstanden

Syntaks

function ScanIndexedColorUsage: TXLSIndexedColorUsageArray;

Resultat

Den returnerte tabellen inneholder alltid 56 oppføringer i stigende fysisk slot-rekkefølge fra 8 til 63

FeltBetydning
ColorIndexDen tilhørende offentlige palettindeksen fra 1 til 56
PaletteSlotDen fysiske BIFF- eller OOXML-slotten for indekserte farger, fra 8 til 63
ARGBDen normaliserte ugjennomsiktige fargen som for øyeblikket er lagret på slotten, eller null hvis den ikke kan løses
DefinitionCountAntallet indekserte definisjoner som peker på slotten
ReferenceCountAntallet objekter, celler eller dekkede betingede formatposisjoner som refererer til disse definisjonene
KindsEt sett som beskriver hver observerte forbrukerkategori
LockedSann når slotten har minst én definisjon eller referanse og derfor må bevares av en plan for palettoptimalisering

Forbrukerdekning

Kinds kan omfatte skrifter, fyllforgrunner, fyllbakgrunner, gradienter, kantlinjer, betingede formater, diagrammer, figurer, kommentarer, arkinnstillinger og andre indekserte forbrukere

Gjennomsøking i Classic XLS omfatter skrifter, XF-fyllinger og kantlinjer, arkenes rutenett, figur- og kommentarfarger, riktekst- og diagramskriftreferanser, eldre betingede formater og BIFF12-databarer eller fargeskalaer

Gjennomsøking i XLSX omfatter materialiserte cellestilreferanser, stiloverlegg, navngitte stiler, utvalg for skrift, fylling, gradient og kantlinje, differensielle stiler, databarer og fargeskalaer

Direkte RGB-, tema-, automatiske, system- og ugyldige fargetoken låser ikke fysiske palettslotter

Ytelses- og tilstandskontrakt

Gjennomsøkingen traverserer bare lagrede sparse celler og eksisterende stilmetadata; den materialiserer ikke pakkede celler eller itererer over ubrukte regnearkkoordinater

Tellingene bruker mettende 64-bits aritmetikk, slik at store områder ikke kan rulle rundt til en mindre verdi

Gjentatte kall på en uendret arbeidsbok returnerer identiske oppføringer og lar egendefinerte paletttellinger og lagringsstatistikk være uendret

Eksempel

Usage := Workbook.ScanIndexedColorUsage;
for I := 0 to High(Usage) do
  if Usage[I].Locked then
    PreservePaletteSlot(Usage[I].PaletteSlot);

Se også