XFA Property 結構描述預設值

已宣告的 font、para、edge、color、comb、textEdit、hyphenation 與 margin 節點,會在一般 JavaScript 與 FormCalc 執行中公開其受支援的結構描述屬性預設值

當範本省略某個屬性時,原生 HPDFXFAResolveFormInstanceProperty 使用同一份對照表,然後套用對應的表單執行個體覆寫

生效值

const field = xfa.resolveNode("main.row[1].cell");
const face = field.font.typeface;
const width = field.border.edge.thickness;
field.font.size = "0.75pt";
field.font.weight = "";
field.border.edge.setAttribute("hidden", "presence");
const currentPresence = field.border.edge.presence;

明確的範本屬性與每執行個體覆寫優先於預設值,包括明確存放的空字串;結構描述查詢不會把預設屬性插回來源範本

新的重複執行個體以結構描述與範本預設值起始,既有執行個體則保留自己的生效覆寫

類別支援的預設值
fontCourier、10pt、正常 weight 與 posture、水平與垂直縮放 100%、基線位移與字距為零、無 kerning、無底線、頂線與貫穿線
para靠左與靠上對齊、行高、縮排與間距為零、孤行寡行控制為零、無已宣告的定位點
edgesquare 端點、presence 為 visible、實線筆畫與 0.5pt 粗細
colorSRGB;fill 底下為白色,edge 或 corner 底下為黑色
combnumberOfCells 為零
textEdit自動捲動原則、field 中單行、draw 中多行;allowRichText 跟隨關聯的 exData 內容
hyphenation斷字與大寫字旗標停用;push 與 remain 計數為 3、單字計數為 7
margin已宣告的內縮距離為零
checkButtonsize=10pt、shape=square、mark=default、allowNeutral=0
captionplacement=left、presence=visible、reserve=-1(自然尺寸)

對照表的值描述已宣告的結構描述屬性;widget 邊界的計算幾何還可能取決於框線與字型度量

corner 預設包括 inverted=0、join=square、radius=0in、presence=visible、stroke=solid 與 thickness=0.5pt;預設顏色為黑色

受支援的不存在 property會在建立與重複原型複製時,以這些結構描述預設值初始化

UI 公開常見的原型屬性;passwordEdit 預設 hScrollPolicy=auto 與 passwordChar=*,choiceList 預設 open=userControl、textEntry=0 與 commitOn=select

value 公開常見的原型屬性、override=0 與空的 relevant 屬性;受支援的純量值類別公開常見原型屬性與空名稱

image 預設 aspect=fit 與 transferEncoding=base64;line 預設反斜線斜率,arc 預設 circular=0 且角度 0 與 360,line/arc/rectangle 預設 hand=even

建立的影像與圖形值保留原生預設值、每執行個體屬性與實際的 draw 消費端

原生純量值建立以欄位目前的生效值初始化實體化的 value 內容

建立的 UI 選擇會透過實際的執行階段 widget 分類與已儲存欄位旗標消耗這些屬性

已儲存的 PDF 輸出

flatten 樣式通道保留小數點值;AcroForm 預設外觀與框線字典保留 0.75pt、0.125pt 這類尺寸,而不是捨入到整數點

圖形邊線寬度在 PDF 內容串流中保留小數值,包括預設的 0.5pt 寬度;數值輸出與系統小數分隔符無關

HPDFXFAFlatten 接受不存在的 draw callback 以進行純欄位擷取,並在沒有 callback 時略過圖形輸出

涵蓋範圍

建立的 exData property預設 maxLength=-1 與 transferEncoding=none,contentType、href、id、name、rid、use 與 usehref 屬性皆為空

對照表目前涵蓋上方列出的類別;更多結構描述類別、更多建立類別、繼承的原型預設值與計算式 widget 邊界,仍是另外的整合目標

已宣告 property 的查詢與變更保留既有的交易、重複執行個體識別與值預算行為

Rich text draw在量測與輸出時使用生效的字型預設值與執行個體覆寫

參考資料與相關 API

預設值遵循XFA 3.3 規格,包括其中依 context 而定的 textEdit 與 color 定義

原生 XFA Property DOM、HPDFXFAResolveFormInstanceProperty 與互動式 XFA 執行環境