Персонализирана цветова палитра
Общ преглед
Работните книги на Excel управляват форматирането на цветовете чрез два модела: по-старата индексирана палитра от 56 цвята в BIFF8 (класически XLS) и произволни RGB връзки или слотове на тема в OpenXML (XLSX); HotXLS предоставя API за персонализиране на индексите за съпоставяне на палитрата и за плавно преодоляване на разликите между тези формати
Индексиране на цветовете на палитрата
Форматът BIFF8 съпоставя цветовете на форматиране с индексни записи от 8 до 63; използвайте интерфейса за цветове на работната книга, за да презапишете цветовите дефиниции по подразбиране
procedure SetColor(const AIndex: Integer; const AColor: TColor);
Ако присвоите персонализирана RGB стойност директно на клетка без актуализиране на индекса на палитрата, HotXLS автоматично ще я съпостави с най-близкия цвят в активната палитра на работната книга
Детерминирано разчитане на индексирани цветове
IXLSWorkbook и TXLSXWorkbook предоставят съответстващи ResolveIndexedColor overloads за тълкуване на индекс, без да се променя работната книга
Извикващият посочва изходното индексно пространство като публичен ColorIndex, BIFF icv или OOXML indexed; резултатът поддържа токените за палитра, автоматични, системни и невалидни отделени един от друг и докладва нормализираната ARGB стойност само когато е наличен конкретен цвят
Системните и автоматичните токени никога не четат изрично текущия desktop; подавайте изричен system-color resolver, когато се изисква RGB изход, специфичен за средата
Ролята на употреба запазва специфичното за формата значение, например BIFF border индекс нула, който означава "непосочен", а не черен
Използвайте NearestIndexedColor, когато RGB стойност трябва да бъде съпоставена с най-близкия физически запис в палитрата; споделеният кеширан OKLab съпоставящ връща публични и физически индекси, без да променя работната книга
Използвайте ScanIndexedColorUsage, за да получите детерминирана инвентаризация на 56-те слота, преди да планирате промени в палитрата; дефинициите и препратките от стилове, обекти на листа, диаграми, коментари и условни формати маркират засегнатите слотове като заключени
Планиране на палитрата без промени
Използвайте BuildBiffPalettePlan, за да визуализирате как директни RGB и разрешени тематични цветове могат да се поберат в 56-те физически BIFF слота на палитрата, без да променяте работната книга
Планът запазва всеки индексиран слот, докладван като заключен, задържа съществуващите точни цветове в слота с най-нисък съвпадащ индекс, присвоява точни цветове, докато има капацитет, и прибягва до честотно претеглено детерминирано OKLab клъстериране само когато уникалните цели надвишават свободните слотове
Всяка цел докладва избрания си публичен и физически индекс, съпоставената ARGB стойност, честотната тежест, квадратичното перцептивно разстояние и състоянието на точно съвпадение; обобщаващите полета докладват точната тежест, претеглената грешка, максималната грешка, променените слотове и дали е било необходимо квантизиране
Поколението и хешът на изходната палитра позволяват на ApplyBiffPalettePlan да отхвърли остарял или подправен план, преди някой слот да е променен; успешно прилагане преизгражда кеширания matcher веднъж, а валиден план без действие оставя поколението непроменено
Класическите работни книги също предоставят BiffPaletteSavePolicy; стойността по подразбиране запазва историческата палитра, докато изричната стойност за оптимизация изгражда и прилага текущ план само за BIFF8 изход и възстановява оригиналната палитра, ако записът пропадне или бъде прекъснат
Богато RGB съпоставяне на цветове
Работните книги XLSX заобикалят ограничения на палитрата и позволяват директно присвояване на 24-битови RGB стойности; разгледайте API за преобразуване на цветове по-долу
- Свойство Colors на работната книга — Достъп до цветовете на палитрата по индекс
- Метод ResolveIndexedColor — Класифицира и по избор тълкува индексирани цветови токени
- Метод NearestIndexedColor — Намира най-близкия физически запис в палитрата чрез кеширано перцептивно съпоставяне
- Метод ScanIndexedColorUsage — Преглежда дефинициите, препратките, видовете консуматори и заключванията за запазване за всеки физически слот на палитрата
- Метод BuildBiffPalettePlan — Визуализира детерминирано разположение на истински цветове и квантизиране, без да променя състоянието на работната книга
- Метод ApplyBiffPalettePlan — Валидира и атомарно прилага текущ план за палитра с 56 слота
- Свойство BiffPaletteSavePolicy — Избира запазен или изрично оптимизиран BIFF8 изход на палитрата за Classic работни книги
- Общ преглед на цветовия модел — Логика за преобразуване на цветове за класически XLS
- Interior SetThemeColor — Конфигурирайте запълване на клетки чрез теми на Office