ApplyBiffPalettePlan 方法
驗證 BIFF 調色盤計畫中的 56 個目標色彩,並以原子方式套用
此方法同時適用於 IXLSWorkbook 與 TXLSXWorkbook
語法
function ApplyBiffPalettePlan( const APlan: TXLSBiffPalettePlan): Boolean;
驗證
當計畫與目前活頁簿調色盤不符時,此方法會傳回 False,且不會更動任何槽位
驗證涵蓋來源調色盤世代與 FNV-1a 雜湊、全部 56 個公開與實體槽位索引、每一個來源色彩、鎖定與已變更旗標、彙總槽位計數,以及不透明的目標色彩
只要發生任何有效的調色盤變更(包括先前曾成功套用過該計畫本身),計畫便會過期
原子化套用
所有驗證都會在第一個調色盤項目變更之前完成
傳統 XLS 會更新固定的調色盤陣列,並重新建置其快取的 OKLab 比對器一次
XLSX 會先備妥替換用的索引色彩覆寫清單,再將其換入活頁簿,同樣重新建置一次比對器
鎖定的槽位永遠不會變更,而沒有任何已變更槽位的有效計畫會成功套用,且不會推進調色盤世代
範例
Plan := Workbook.BuildBiffPalettePlan;
if not Workbook.ApplyBiffPalettePlan(Plan) then
raise Exception.Create('The palette changed after planning');