原生 Linux rich 字型 fallback
不變的版本化 V1 JSON 操作為具名家族 rich 填寫與 FDF/XFDF rich 匯入接受 fallbackFontFamilies: true;預設仍為 False
{
"schemaVersion": 1,
"type": "forms.fill",
"fontFamilies": ["Primary", "Fallback"],
"fallbackFontFamilies": true,
"fields": [{
"name": "Input",
"richTextRuns": [{"text": "AΩB", "fontFamily": "Primary"}]
}]
}
填寫時,編輯層級的布林值覆寫操作層級旗標;rich 匯入使用操作層級旗標;True 需要明確非空的 fontFamilies 設定,非布林值會產生 typed 的 invalid-argument 錯誤
綁定透過既有 Fontconfig provider,為每個設定的候選家族解析每個既有樣式;匯入也為 scalar 欄位保留第一個 regular 程式;每個要求的程式都必須在外觀準備之前可用且有效
這些 provider 配置共用外觀字型總限額與 limits.memoryBytes 的四分之一;canvas 保留總額度,綁定則為每個程式獨立檢查剩餘位元組,避免對已計費字型重複扣減
接著原生 resolver 跨既有樣式與 run 接縫選出完整 Unicode grapheme,使用實際候選字型位元組、情境 shaping、雙向排序與原始 typed 大小與顏色精度;fallback 只改變外觀準備,並保留既有的 V 與 RV 值
這些操作保留已準備輸出、分片 callback、原始 AES R5/R6 安全性、輸出與結果 callback 成功後的物件圖提交、取消,以及逐位元組相同的已提交表單匯入無變更
formData.richFontFamilyFallback 能力旗標公告這個已實作選項;對外的 V1 記錄布局與匯出符號版本維持不變
兩個原生 Linux 編譯器通過 28 份 fallback PDF 上的 250 項實際 callback 檢查與 1062 項獨立檢查、36 項 C 用戶端檢查,以及 171 項針對實際 C glyph 輸出與低於 8 MiB 之有效彙總字型配置的額外檢查
Fontconfig 家族解析遵循既有 Linux 綁定 provider 契約;有界的行內 CSS 字型清單順序與 typed JSON fontFamilyCandidates 可搭配選用的 fallback 旗標使用;外部樣式表、更廣的 CSS 版面與 Windows callback fallback 載入仍是獨立工作