XFDF 中的无损空 choice 值
choice 字段可以没有任何选中选项,也可以选中一个导出值为空字符串的选项;这两种状态产生不同的 PDF 字段值,在导出/导入往返中必须保持区分
空选中与空导出值
HotPDF 在 https://www.loslab.com/hotpdf/xfdf/ 命名空间中以显式扩展属性导出空值数组
<xfdf xmlns="http://ns.adobe.com/xfdf/" xmlns:hpdf="https://www.loslab.com/hotpdf/xfdf/">
<fields>
<field name="Choice" hpdf:empty-values="true"><value/></field>
</fields>
</xfdf>
该属性表示空数组,导入这个字段会清空其选中选项
未加标记的空 value 保留普通含义:它表示空字符串,当存在匹配的空导出选项时选中该选项
<field name="Choice"><value/></field>
只含名称的字段保留既有的仅名称行为,不会变成显式清空
命名空间与输入校验
导入器按展开后的命名空间名识别扩展,因此前缀可以不是 hpdf;无限定属性的属性或其他命名空间中的属性不会请求清空
扩展值必须恰好是 true,且没有 value 元素或只有一个空 value 元素;冲突的非空值、重复值和富文本值会被拒绝
命名空间声明和扩展属性计入既有的对象与字节预算;取消与事务检查继续生效
互操作性
该属性是 HotPDF 扩展,不是 Adobe XFDF 或 ISO 的扩展声明;其他消费方可能忽略它并按各自行为解释空值
当「无选中」与「选中空字符串」的区别必须经受住往返时,请使用支持 HotPDF 的消费方
原生、作业与回调 API
同一表示适用于原生 form 数据交换以及既有的 Windows 与 Linux JSON/回调入口;不向版本化 V1 回调记录增加任何字段
Windows form 数据 JSON 限制用 formData,Linux form 数据 JSON 限制用 formDataLimits;请按目标 API 使用文档化的键
没有待处理文档编辑时,无变更导入保留原始文件字节;既有的待处理编辑仍是准备好的文档的一部分,发布保留既有的原子输出与经认证的权限检查