Egyéni színpaletta
Áttekintés
Az Excel munkafüzetek két modell segítségével kezelik a színformázást: a régebbi 56 színű indexelt paletta a BIFF8-ban (klasszikus XLS) és tetszőleges RGB kötések vagy témabeállítások az OpenXML-ben (XLSX); a HotXLS API-kat biztosít a palettaleképezési indexek testreszabásához és a formátumok közötti különbségek áthidalásához
Paletta színindexelés
A BIFF8 formátum a formázási színeket 8-tól 63-ig terjedő indexbejegyzésekhez rendeli; használja a munkafüzet színfelületét az alapértelmezett színdefiníciók felülírásához
procedure SetColor(const AIndex: Integer; const AColor: TColor);
Ha egyéni RGB értéket rendel közvetlenül egy cellához a palettaindex frissítése nélkül, a HotXLS automatikusan a munkafüzet aktív palettájának legközelebbi színéhez rendeli azt
Determinisztikus indexelt színfeloldás
Az IXLSWorkbook és a TXLSXWorkbook egymással egyező ResolveIndexedColor túlterheléseket biztosít egy index úgyértelmezéséhez, hogy közben nem módosítja a munkafüzetet
A hívó a forrásindextérként a nyilvános ColorIndex, a BIFF icv vagy az OOXML indexed teret jelöli meg; az eredmény paletta-, automatikus-, rendszer- és érvénytelen tokent különböztet meg, és a normalizált ARGB értéket csak akkor jelenti, ha konkrét szín áll rendelkezésre
A rendszer- és automatikus tokenek soha nem olvassák be implicitly az asztal aktuális beállításait; ha környezetfüggő RGB kimenetre van szükség, adjon át explicit rendszerfeloldót
A használati szerep megőrzi a formátumspecifikus jelentést, például hogy a BIFF keretindex nulla nem meghatározottat jelent, nem feketét
Ha egy RGB értéket a legközelebbi fizikai palettabejegyzéshez kell rendelni, használja a NearestIndexedColor metódust; a közös, gyorsítótárazott OKLab egyeztető nyilvános és fizikai indexeket ad vissza a munkafüzet módosítása nélkül
Palettaváltoztatások megtervezése előtt a ScanIndexedColorUsage ad determinisztikus, 56 rekeszes leltárt; a stílusok, munkalapobjektumok, diagramok, megjegyzések és feltételes formázások definíciói és hivatkozásai zároltként jelölik az érintett rekeszeket
Módosításmentes palettatervezés
A BuildBiffPalettePlan előre megmutatja, hogyan férhetnek el a közvetlen RGB és a feloldott témaszínek az 56 fizikai BIFF palettarekeszben a munkafüzet módosítása nélkül
A terv minden zároltként jelzett indexelt rekeszt megőriz, a meglévő pontos színeket a legalacsonyabb egyező rekeszben tartja, amíg van kapacitás, pontos színeket rendel hozzá, és csak akkor használ frekvenciasúlyozott determinisztikus OKLab klaszterezést, ha az egyedi célok meghaladják a szabad rekeszek számát
Minden cél jelenti a kiválasztott nyilvános és fizikai indexét, a hozzárendelt ARGB értéket, a frekvenciasúlyt, a négyzetes perceptuális távolságot és a pontos egyezés állapotát; az összefoglaló mezők a pontos súlyt, a súlyozott hibát, a maximális hibát, a módosított rekeszeket és azt jelentik, hogy volt-e szükség kvantálásra
A forráspaletta generációja és hash-e segíti az ApplyBiffPalettePlan-t abban, hogy még bármilyen rekesz módosítása előtt elutasítsa az elavult vagy manipulált tervet; a sikeres alkalmazás egyszer építi újra a gyorsítótárazott egyeztetőt, az érvényes üres műveletű terv pedig változatlanul hagyja a generációt
A klasszikus munkafüzetek emellett a BiffPaletteSavePolicy tulajdonságot is biztosítják; alapértelmezése megőrzi a történelmi palettát, míg az explicit optimalizációs érték csak BIFF8 kimenethez készít és alkalmaz aktuális tervet, és a mentés sikertelensége vagy megszakítása esetén visszaállítja az eredeti palettát
RGB színleképezés
Az XLSX munkafüzetek megkerülik a paletta korlátozásait, és lehetővé teszik a 24 bites RGB értékek közvetlen hozzárendelését; ellenőrizze az alábbi színkonverziós API-kat
- Munkafüzet Colors tulajdonsága — A paletta színeinek elérése index alapján
- ResolveIndexedColor metódus — Az indexelt színtokenek osztályozása és opcionális feloldása
- NearestIndexedColor metódus — A legközelebbi fizikai palettabejegyzés megtalálása gyorsítótárazott perceptuális egyeztetéssel
- ScanIndexedColorUsage metódus — Definíciók, hivatkozások, fogyasztótípusok és zárolások vizsgálata minden fizikai palettarekeszre
- BuildBiffPalettePlan metódus — Determinisztikus valódi színű elhelyezés és kvantálás előzetes megtekintése a munkafüzet állapotának módosítása nélkül
- ApplyBiffPalettePlan metódus — Aktuális 56 rekeszes palettaterv validálása és atomi alkalmazása
- BiffPaletteSavePolicy tulajdonság — Klasszikus munkafüzetekhez megőrzött vagy explicit optimalizált BIFF8 palettakimenet kiválasztása
- Színmodell áttekintése — Színkonverziós logika klasszikus XLS-hez
- Interior SetThemeColor — Cella kitöltésének konfigurálása Office témák segítségével