原生注释 XFDF 交换

HPDFHeadlessXFDF 从已加载的原生 PDF 图导出映射注释,并把 XFDF 注释导入准备为独立的增量修订版

UTF-8 XML 字节用 HPDFExportHeadlessAnnotationsXFDF,向既有文档追加注释且不改动已加载源图用 SaveAnnotationsXFDFToFile

映射注释 profile

该 profile 映射 Text、FreeText、Line、Square、Circle、Polygon、PolyLine、Highlight、Underline、StrikeOut、Squiggly、Stamp、Ink、Caret、FileAttachment、Sound、Redact 和 Link

公共值包括页、矩形、Unicode 内容、作者、注释名称、日期、主题、标志、不透明度、颜色和受支持的边框属性

类型专属值包括四边形坐标、顶点、ink 手势、线端与引导线几何、FreeText 的 intent/callout/fringe/默认文本属性、Redact 重复状态、URI 或具名链接 action、远程 GoToR action,以及具名或显式本地目标与 GoTo action

空颜色分量数组保留透明色;Gray 和 CMYK 源颜色映射为 XFDF RGB 值,RGB 分量量化为该格式的六位十六进制表示

FileAttachment 导出优先使用 Unicode 文件名,即使不存在内嵌流也保留外部文件元数据;内嵌文件与声音数据解码为设界的规范 base64,并作为真实间接流导入,空流也不例外

Popup 注释表示为嵌套的 popup 元素,导入时带间接 Parent、Popup 和页链接;回复在第二遍中对照既有与新追加的注释名称解析,前向引用也不例外

富内容保留 XHTML 命名空间、有序混合文本和继承的命名空间绑定

事务与权限

导入以追加方式添加注释,在发布前拒绝重复名称、含糊或缺失的回复目标以及非法映射值

失败或被取消的导入保留目标文件和已加载源图;成功的导入同样让已加载源保持不变,想采用新修订版时请加载保存后的文件

导出需要提取权限,导入需要注释权限;AES-256 R5/R6 安全性保留在保存的修订版中

真实的认证策略经原生签名工作流验证:P1 和 P2 阻止注释变更,P3 允许保留原始已签字节的注释修订版

边界

THPDFHeadlessXFDFOptions 对输入/输出字节、注释数量、图与 XML 节点、深度和工作存储设界,并支持协作取消

映射数值必须是有限值且绝对值不超过一百万,坐标数量、不透明度、采样尺寸和其他类型化值另有约束

整篇文档的 XML 准入在注释映射之前检查编码、命名空间、重复属性、实体和完整结构;DTD 与外部实体处理被禁用

操作边界

标准 stamp 外观传输通过 base64 类型化 XML 保留真实的 Form 流以及有界的无环字体、图像和图形资源

通用注释 AP 传输、自定义注释字典、注释替换/移除、任意 action 和 FDF 注释数据仍是独立工作

注释外观合成与渲染是独立操作;导入几何与文本属性不会创建 AP 流

其他源注释子类型在导出时被跳过并计入结果;选中的映射值畸形时操作失败,不返回部分 XML

原生 Pascal API 在 Windows 和 Linux 上可用;版本化 Linux C ABI 也暴露基于回调的 JSON 注释操作,Windows 文件作业与 V1 回调暴露相同的映射注释交换

显式注释移除

按页面与名称的注释移除是单独的操作;在导入的 FDF 或 XFDF 中省略某个注释不会删除它

Widget 字段树删除和安全擦除需要单独的操作;增量移除保留之前的 PDF 字节