Dokumentasi HotXLS

Palet Warna Kustom

Ringkasan

Buku kerja Excel mengelola pemformatan warna menggunakan dua model: palet terindeks 56 warna yang lebih lama di BIFF8 (XLS klasik) serta pengikatan RGB arbitrer atau slot tema di OpenXML (XLSX); HotXLS menyediakan API untuk menyesuaikan indeks pemetaan palet dan menjembatani perbedaan antara format ini dengan mulus

Pengindeksan Warna Palet

Format BIFF8 memetakan warna format ke entri indeks dari 8 hingga 63; gunakan antarmuka warna buku kerja untuk mengesampingkan definisi warna bawaan

procedure SetColor(const AIndex: Integer; const AColor: TColor);

Jika Anda menetapkan nilai RGB kustom langsung ke sel tanpa memperbarui indeks palet, HotXLS akan memetakannya secara otomatis ke warna terdekat dalam palet aktif buku kerja

Resolusi Warna Terindeks yang Deterministik

IXLSWorkbook dan TXLSXWorkbook mengekspos overload ResolveIndexedColor yang senada untuk menafsirkan sebuah indeks tanpa mengubah workbook

Pemanggil mengidentifikasi ruang indeks sumber sebagai ColorIndex publik, icv BIFF, atau indexed OOXML; hasilnya menjaga token palet, automatic, system, dan invalid tetap terpisah dan hanya melaporkan nilai ARGB ternormalisasi saat sebuah warna konkret tersedia

Token system dan automatic tidak pernah membaca desktop yang sedang berjalan secara implisit; berikan resolver warna system eksplisit saat output RGB yang spesifik-lingkungan dibutuhkan

Peran penggunaan mempertahankan makna spesifik-format, misalnya indeks nol border BIFF berarti tidak dispesifikasikan, bukan hitam

Gunakan NearestIndexedColor saat sebuah nilai RGB harus dipetakan ke entri palet fisik terdekat; matcher OKLab ber-cache yang dipakai bersama mengembalikan indeks publik dan fisik tanpa mengubah workbook

Gunakan ScanIndexedColorUsage untuk mendapatkan inventaris 56-slot yang deterministik sebelum merencanakan perubahan palet; definisi dan referensi dari style, objek worksheet, chart, komentar, dan format bersyarat menandai slot yang terdampak sebagai terkunci

Perencanaan Palet Tanpa Mutasi

Gunakan BuildBiffPalettePlan untuk mempratinjau bagaimana RGB langsung dan warna theme hasil resolve dapat muat ke dalam 56 slot palet BIFF fisik tanpa mengubah workbook

Rencana tersebut mempertahankan setiap slot terindeks yang dilaporkan terkunci, menyimpan warna eksak yang sudah ada pada slot kecocokan terendah, meng-assign warna eksak selama kapasitas masih ada, dan hanya memakai clustering OKLab deterministik berbobot frekuensi saat target unik melebihi slot bebas

Setiap target melaporkan indeks publik dan fisik terpilihnya, nilai ARGB hasil pemetaan, bobot frekuensi, jarak perseptual kuadrat, dan status kecocokan-eksak; field ringkasan melaporkan bobot eksak, error terbobot, error maksimum, slot yang berubah, dan apakah kuantisasi diperlukan

Generasi dan hash palet sumber membuat ApplyBiffPalettePlan dapat menolak rencana yang usang atau dimanipulasi sebelum ada slot yang berubah; penerapan yang sukses membangun ulang matcher ber-cache sekali dan rencana no-op yang valid membiarkan generasi tidak berubah

Workbook Classic juga mengekspos BiffPaletteSavePolicy; default-nya mempertahankan palet historis, sedangkan nilai optimisasi eksplisit hanya membangun dan menerapkan rencana terkini untuk output BIFF8 dan mengembalikan palet asli jika save gagal atau dibatalkan

Pemetaan Warna RGB Kaya

Buku kerja XLSX melewati batasan palet dan mengizinkan penetapan langsung nilai RGB 24-bit; periksa API konversi warna di bawah ini