【发布时间】:2016-12-25 08:31:18
【问题描述】:
我正在使用 Apache FOP 2.1 生成 PDF 文件。
为此,我尝试将默认语言设置为英语。
这应该在创建 PDF 后通过 Adobe Reader 的选项文件/属性/高级/阅读选项进行验证。该值当前为空。
我尝试在fo:root 元素、第一页序列或.xsl 文件的第一个元素中设置xml:lang="en"... 没有任何接缝可以解决问题。
有什么建议吗?
谢谢迪米特里斯。
更新:
我已经按照答案中的建议尝试了另外 2 个选项,这 2 个都不起作用
<fo:declarations> <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf"> <pdf:string key="Lang">en</pdf:string> </pdf:catalog><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>the document title</dc:title> <dc:language>en</dc:language>
更新 2
已经开始在这个问题上悬赏。
任何帮助表示赞赏和奖励
【问题讨论】:
-
嗯,尝试使用来自stackoverflow.com/questions/38347687 的答案和我会
<fo:declarations><pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/extensions/pdf"><pdf:string key="Lang">en</pdf:string></pdf:catalog>...的pdf 参考资料(不知道xmlns 中的; 来自哪里)(以及fo 中的xml:lang="en":root) 但它也不会在 acrobat 标记中显示语言 -
然而,在我之前的评论中,该 pdf 文件上的 exiftool 将显示
Language : en,因此它可以正确地放入文件中。问题可能是 acrobat 属性对话框中的字段引用了不同的内容。另见PDF16: Setting the default language using the /Lang entry in the document catalog of a PDF document -
我的猜测是它在 Reader 中不起作用。如果您转到上面的页面:w3.org/TR/WCAG20-TECHS/PDF16.html,然后下载他们引用的确切示例并查看属性,它显示为空白。我还从 FOP、RenderX、Word 中搜索了我的 PDF ......一些标记的,各种类型的。以这种方式查看时,我找不到任何有价值的东西。
-
您是否有 PDF 样本...任何以任何方式生成的 PDF 都可以显示 Reader 中的语言?如果你这样做了,也许我们可以看看 PDF 看看有什么不同。如果您找不到,那么问题的答案是......“问 Adobe”(虽然对于 Stackoverflow 作为答案来说这太短了:))
-
我下载了 Adobe Acrobat Pro,在
xml:lang="en" 中设置时会显示在 Pro 的属性中,但在 Adobe Reader(免费版)中不显示。看起来像一个限制/错误
标签: xml apache xslt xsl-fo apache-fop