原生批注审阅 PDF

在原生增量 PDF 副本中创建真实可见的审阅高亮,同时保留原始页面内容、资源、加密与签名字节范围

{"schemaVersion":1,"type":"compare.contract","format":"pdf","side":"after","options":{"maxHighlights":1000}}

用两个已加载句柄、必需的 PDF 输出 Callback 与必需的结果 Callback 调用 hpdf_document_compare_json_v1;side 选择 before 或 after,默认 after

JSON 结果包含完整语义对比、mediaType:application/pdf 与所选 side;二进制 Callback 收到的是真实准备好的 PDF 修订

Pascal 入口

HPDFSaveHeadlessContractAnnotatedPDF 把完整对比报告映射为源码行高亮,导出前会对照选定的已加载文档校验页数、文本与定位行几何

SaveReviewHighlightsToFile 接受显式页面矩形与 Unicode caption,用于其他审阅工作流

输出与权限

每个高亮都有真实的 Highlight 注释、矩形、四边形、Unicode contents、打印标志以及带黄色填充与 Multiply 透明的 normal Form 外观

既有注释与签名控件保持原样;两个入口都不改动已加载文档的注释或脏状态

已认证的 DocMDP P3 允许审阅注释;P1 与 P2 在发布前拒绝,更严格的已认证字段锁权限以及没有注释权的加密用户权限同样拒绝

有效的 P3 审阅修订可以重新打开并再次保存;校验确保原始控件只被保留一次,并继续保护页面内容、资源与已签名或已锁定的字段

限制与取消

修改 MaxHighlights、MaxWorkingBytes 或 CancellationToken 前先用 THPDFHeadlessReviewOptions.Default 初始化;默认 10000 个高亮与 67108864 准备字节

文档对象、对象字节、文件字节与深度限制同样适用;caption 要求不含 NUL 的合法 UTF-16,矩形要求有限有界坐标与正数尺寸

写入器私下准备、刷盘 staging 文件并通过原子重命名发布;源别名、校验失败、预算耗尽与取消都会保留既有目标文件并删除未发布的 staging 文件

文档与其审阅选项共用一个取消 Token;即使请求了取消,临时文档限制也会还原

阅读器验证

验收通过分片原生 Callback 检查明文、嵌套 Form、AES R5/R6、Unicode caption、重复修订、可信 CAdES 签名保留、真实可见 MuPDF 像素以及两个源侧

即使禁用注释绘制,阅读器也可能依据注释资源选择透明页面合成,改变文本抗锯齿;单独移除这些注释即可恢复精确的原始页面像素

对比矩形覆盖受影响的语义行而非精确字符轮廓;通用图像对比热力图与带批注的非契约对比仍是独立能力

原生审阅行为与限制 · 原生契约对比