Méthode BuildBiffPalettePlan
Construit un plan déterministe en lecture seule pour représenter les couleurs RVB directes et les couleurs de thème résolues dans les 56 emplacements physiques de la palette BIFF
La méthode est disponible sur IXLSWorkbook et TXLSXWorkbook et ne modifie jamais les entrées de palette, les styles, les cellules, les compteurs de couleurs personnalisées ni le comportement d'enregistrement
Syntaxe
function BuildBiffPalettePlan: TXLSBiffPalettePlan;
Plan des emplacements
Slots contient toujours 56 entrées dans l'ordre des index publics de 1 à 56 et dans l'ordre des emplacements physiques de 8 à 63
| Champ | Signification |
|---|---|
SourceARGB | La couleur normalisée actuellement stockée dans l'emplacement de la palette |
TargetARGB | La couleur proposée pour l'emplacement sans l'appliquer |
DefinitionCount et ReferenceCount | Les consommateurs indexés hérités de ScanIndexedColorUsage |
Kinds | Les catégories de consommateurs indexés qui protègent l'emplacement |
Locked | True lorsque l'emplacement source doit rester inchangé |
Changed | True lorsque la cible proposée diffère de la couleur source |
Mappages cibles
Targets agrège les couleurs égales et enregistre le nombre de définitions, le nombre de références restituées, les catégories de consommateurs, le poids de fréquence effectif, les index publics et physiques sélectionnés, l'ARGB mappé, l'erreur OKLab quadratique et le statut de correspondance exacte
Les références restituées déterminent le poids effectif lorsqu'elles sont présentes ; sinon, les définitions stockées maintiennent la représentation des couleurs non référencées dans le plan
Les couleurs directes et de thème résolues issues des polices, remplissages, dégradés, bordures, styles différentiels, barres de données et échelles de couleurs participent à la planification, tandis que les couleurs indexées, automatiques, invalides et partiellement transparentes ne deviennent pas des cibles
Comportement de planification
Les couleurs de palette exactes existantes sont conservées à leur emplacement correspondant le plus bas et les consommateurs indexés verrouillent leurs emplacements sources avant qu'un emplacement libre ne soit considéré
Lorsque chaque cible unique trouve place, les emplacements libres reçoivent les couleurs exactes dans l'ordre ARGB déterministe
Lorsqu'il y a plus de couleurs que d'emplacements libres, une passe de clustering OKLab pondérée par fréquence à itérations fixes choisit les couleurs cibles restantes tandis que les emplacements exacts verrouillés et conservés restent fixes
Les mappages finaux à égale distance utilisent l'index de palette public le plus bas
Identité et statistiques du plan
SourcePaletteGeneration et SourcePaletteHash identifient l'instantané de palette à partir duquel le plan a été construit
LockedSlotCount, ChangedSlotCount, TotalTargetWeight, ExactTargetWeight, WeightedError, MaxDistanceSquared et Quantized résument le résultat pour l'inspection et les décisions de stratégie
Exemple
Plan := Workbook.BuildBiffPalettePlan;
if Plan.Quantized then
LogPaletteError(Plan.WeightedError);
for I := 0 to High(Plan.Slots) do
if Plan.Slots[I].Changed then
PreviewPaletteChange(Plan.Slots[I]);