Задаёт цвет шрифта одному из 12 слотов цветов темы Office с необязательной корректировкой оттенка. Аналог метода
Font.Color для темы — используйте его, когда приложение должно следовать палитре темы рабочей книги, а не фиксировать буквальный RGB. Доступен с версии v2.61.0 (очередь D диаграммного бэклога, фаза 4)
Синтаксис
procedure SetThemeColor(ThemeIdx: Word; Tint: Double);
Параметры
ThemeIdx — индекс слота темы (отсчёт с 0)
(0=lt1, 1=dk1, 2=lt2, 3=dk2, 4..9=accent1..6, 10=hlink, 11=foHlink)
Tint — корректировка осветления/затемнения в стиле спецификации в диапазоне -1.0 .. +1.0
Кодируется в XFExt FullColorExt как знаковое целое Q15 в nTintShade
Примечания
Установщик ведёт себя идентично
Interior.SetThemeColor, но записывает слот rsFont записи XFExt $087D extType ($000D). XF-запись шрифта по-прежнему получает наилучшее приближение индексированного icv, чтобы Excel 97-2003 видел приближение; Excel 2007+ восстанавливает точный индекс темы + оттенок из слота XFExt FullColorExt
Обратное чтение через
Font.Color возвращает RGB, разрешённый через палитру темы BIFF рабочей книги, поэтому приложение всегда видит конкретный LongWord, независимо от того, был ли первоначальный установщик RGB или основан на теме
Пример
Помечает столбец аудита цветом accent3 + оттенком, чтобы цвет шрифта отслеживал тему рабочей книги
Workbook.Sheets[1].Range['D2', 'D50'].Font.SetThemeColor(6, - 0.25);
Workbook.SaveAs('AuditColumn.xls', xlExcel97);
См. также