Dokumentacja HotXLS

Klasyczny model kolorów XLS

Wniosek

HotXLS nie dodaje elementów ThemeColor / TintAndShade do klasycznej fasady XLS lxHandle. Te elementy należą do nowszego modelu stylów OOXML i nie mają rzeczywistego, możliwego do przesyłania docelowego magazynu BIFF .xls. Dodanie ich do starego API XLS stworzyłoby mylącą powierzchnię: wartości zostałyby utracone przy zapisie lub zredukowane do przybliżonego koloru palety
Klasyczne API XLS lxHandle zapisuje pliki BIFF .xls. BIFF przechowuje kolory czcionki, obramowania i wypełnienia przez indeksy palety, nie przez sloty kolorów motywu Office

Użyj Color, ColorIndex i Workbook.Colors

Użyj Color, gdy chcesz przypisać wartość RGB. HotXLS mapuje tę wartość RGB na bieżącą paletę skoroszytu. Użyj ColorIndex, gdy chcesz bezpośrednio zaadresować slot palety. Użyj IXLSWorkbook.Colors, aby dostosować wpisy palety

Kolory motywu i odcień/cieniowanie

ThemeColor i TintAndShade to koncepcje stylu OOXML .xlsx. Klasyczna fasada XLS nie udostępnia tych właściwości, ponieważ skoroszyt BIFF nie ma równoważnego magazynu motywu/odcienia, który Excel może obsługiwać jako metadane motywu
Jeśli kod źródłowy używa kolorów motywu, a plik docelowy to .xls, najpierw rozwiąż kombinację motywu/odcienia do koloru RGB, a następnie przypisz Color lub niestandardowy wpis palety. Jeśli relacja motywu musi pozostać edytowalna w programie Excel, użyj fasady XLSX (lxHandleX) i jej właściwości stylu uwzględniających motyw

Przykład

Ten przykład dostosowuje slot palety i używa go do wypełnienia komórki w klasycznym skoroszycie XLS

Workbook.Colors[8, 0] := RGB(42, 107, 191);
Workbook.Worksheets[1].Range['A1', 'D1'].Interior.ColorIndex := 8;