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
- Properti Workbook Colors — Akses warna palet berdasarkan indeks
- Metode ResolveIndexedColor — Klasifikasikan dan opsional me-resolve token warna terindeks
- Metode NearestIndexedColor — Temukan entri palet fisik terdekat menggunakan pencocokan perseptual ber-cache
- Metode ScanIndexedColorUsage — Periksa definisi, referensi, jenis konsumen, dan kunci pelestarian untuk setiap slot palet fisik
- Metode BuildBiffPalettePlan — Pratinjau penempatan true-color dan kuantisasi yang deterministik tanpa mengubah status workbook
- Metode ApplyBiffPalettePlan — Validasi dan terapkan secara atomik rencana palet 56-slot terkini
- Properti BiffPaletteSavePolicy — Pilih output palet BIFF8 yang dipertahankan atau dioptimisasi secara eksplisit untuk workbook Classic
- Ringkasan model warna — Logika konversi warna untuk XLS klasik
- Interior SetThemeColor — Konfigurasikan isian sel menggunakan tema Office