PDF 辅助功能 | 'Title - Failed' Acrobat Pro 在使用 XSL-FO 生成的 PDF 中出错
PDF Accessibility | 'Title - Failed' Error in Acrobat Pro in PDF generated using XSL-FO
我正在使用 Apache FO 从 XML 创建一个 PDF 文件。当我 运行 使用 Acrobat Reader Pro DC(版本 2019.010.20098)对生成的 PDF 进行辅助功能检查时,辅助功能报告指示 'Title - Failed'.
当我在 Acrobat 中查看文档的元数据时(文件 --> 属性 --> 描述选项卡)我可以看到标题、作者和主题值都填充了我的 FO 样式表中定义的值(请参阅下面)。
如果我转到文件 --> 属性 --> 初始视图(选项卡)--> "Window Options"(部分)和显示中的 select 'Document Title' 然后 re-run 可访问性检查标题通过。
此问题与 this previous question 中提出的问题相同。
根据对上一个问题的回答,这个问题应该在 FOP 2.2 中得到解决。但是,我已经尝试使用 FOP 2.2 和 FOP 2.3 进行此操作,但问题仍然存在。我目前正在 运行ning FOP 2.3,在撰写本文时这是当前版本。
我是否需要设置某些 FOP 值或 属性 以使 Acrobat 默认显示文档标题而不是初始视图中的文件名?
这是我的 XSL 的相关片段:
...
</fo:layout-master-set>
<fo:declarations>
<x:xmpmeta xmlns:x="adobe:ns:meta/">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>DOCUMENT TITLE</dc:title>
<dc:creator>COMPANY NAME</dc:creator>
<dc:description>DOCUMENT DESCRIPTION</dc:description>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
</fo:declarations>
<fo:bookmark-tree>
...
我错过了什么?
我通过将以下代码片段添加到我的 "fo:declaration" 部分解决了这个问题:
<fo:declarations>
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
<!-- this will replace the window title from filename to below dc:title -->
<pdf:dictionary type="normal" key="ViewerPreferences">
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
</pdf:dictionary>
</pdf:catalog>
<x:xmpmeta xmlns:x="adobe:ns:meta/">
我在 中了解了这种方法。
谢谢@TonyGraham 的帮助。
我正在使用 Apache FO 从 XML 创建一个 PDF 文件。当我 运行 使用 Acrobat Reader Pro DC(版本 2019.010.20098)对生成的 PDF 进行辅助功能检查时,辅助功能报告指示 'Title - Failed'.
当我在 Acrobat 中查看文档的元数据时(文件 --> 属性 --> 描述选项卡)我可以看到标题、作者和主题值都填充了我的 FO 样式表中定义的值(请参阅下面)。
如果我转到文件 --> 属性 --> 初始视图(选项卡)--> "Window Options"(部分)和显示中的 select 'Document Title' 然后 re-run 可访问性检查标题通过。
此问题与 this previous question 中提出的问题相同。
根据对上一个问题的回答,这个问题应该在 FOP 2.2 中得到解决。但是,我已经尝试使用 FOP 2.2 和 FOP 2.3 进行此操作,但问题仍然存在。我目前正在 运行ning FOP 2.3,在撰写本文时这是当前版本。
我是否需要设置某些 FOP 值或 属性 以使 Acrobat 默认显示文档标题而不是初始视图中的文件名?
这是我的 XSL 的相关片段:
...
</fo:layout-master-set>
<fo:declarations>
<x:xmpmeta xmlns:x="adobe:ns:meta/">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">
<dc:title>DOCUMENT TITLE</dc:title>
<dc:creator>COMPANY NAME</dc:creator>
<dc:description>DOCUMENT DESCRIPTION</dc:description>
</rdf:Description>
</rdf:RDF>
</x:xmpmeta>
</fo:declarations>
<fo:bookmark-tree>
...
我错过了什么?
我通过将以下代码片段添加到我的 "fo:declaration" 部分解决了这个问题:
<fo:declarations>
<pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf">
<!-- this will replace the window title from filename to below dc:title -->
<pdf:dictionary type="normal" key="ViewerPreferences">
<pdf:boolean key="DisplayDocTitle">true</pdf:boolean>
</pdf:dictionary>
</pdf:catalog>
<x:xmpmeta xmlns:x="adobe:ns:meta/">
我在
谢谢@TonyGraham 的帮助。