SetPDFUAModeA

文档属性、可访问性

描述

结尾的 A 表示 ANSI(char)DLL 入口点;ActiveX/COM 接口仅公开 Unicode 形式。其行为与 SetPDFUAMode 相同,字符串参数按当前 SetAnsiMode 代码页解释

为所选文档激活 PDF/UA-1(ISO 14289-1:2014)一致性模式。此单次调用会执行标准所需的全部文档级设置:将文档版本提升至至少 PDF 1.7,写入 MarkInfo.Marked 和 MarkInfo.Suspects,在 ViewerPreferences 中启用 DisplayDocTitle,提供语言时设置 Catalog/Lang,并写入 pdfuaid:part=1 XMP 命名空间条目。当 SetPDFUAMode 激活后对文档加密时,加密 /P 键的第 10 位 CanCopyAccess 会自动强制启用,无论调用方提供的 TPDFExtraPermissions 掩码如何,从而满足 ISO 14289-1 §7.16。如果在调用 SetPDFUAMode 前文档已加密,则保留现有加密字典不变 — 请在 SetPDFUAMode 后再次调用 Encrypt 以刷新 /P 值。GetPDFUADiagnostics 会将此情况报告为 ENCRYPT-NO-ACCESS

请在添加任何内容前调用此函数。使用 BeginTag/EndTag 和 BeginArtifact/EndArtifact 标记文档内容

语法

Delphi

Function DLSetPDFUAModeA(InstanceID: Integer; Language: PAnsiChar): Integer;

DLL

int DLSetPDFUAModeA(int InstanceID, const char * Language);

参数

Language文档默认语言的 BCP 47 语言标签,例如 "en-US"、"de"。传入空字符串可省略 Catalog /Lang 条目

返回值

0失败(未打开文档)
1PDF/UA 模式已成功激活

备注

保存时,PDF/UA 模式处于活动状态时,所有打开页面都会自动接收 /Tabs /S 条目(基于结构的制表顺序),满足 ISO 14289-1 §7.18.3。保存时修复还会自动填充缺失的部件提示(/TU)和注释 /Contents 条目,为嵌入文件附加 /AFRelationship,删除所有 TrapNet 注释(ISO 14289-1 §7.18.2 禁止),并为缺少显式 ListNumbering 属性的 L 结构元素附加 /O = List /ListNumbering = None(ISO 14289-1 §7.6)

另请参阅:SetDocumentLanguage、SetMarkInfo、SetPDFAMode