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 的帮助。