如何修复使用 Asciidoctor-pdf 创建的 PDF 不显示 üöä 字符

How to fix created PDF with Asciidoctor-pdf doesn't show üöä chars

我正在使用 asciidoctor 编写我的文档,现在我将使用我现有的 adoc 文件创建一个 pdf 文件,但是在我使用之后:

asciidoctor -r asciidoctor-pdf -b pdf documentation.adoc

并获取我的 pdf 我已经使用 firefox 进入我的 documentation.pdf 的 url 但是我在 pdf 中的格式代码块不显示 üäö 字符,这个字符我用于内联注释。如果我的输出文件是 HTML 我没有特殊字符的错误。

我的 PDF 文件看起来是这样的:

My pdf code block

My HTML code block

我尝试使用

ä
作为 ä 字符,但 pdf 文件显示
ä

最后一期优先:HTML 实体中不应有空格;如果需要用一个来显示ä,写成ä.

问题是用于源代码块的字体不包含 some/all 个重音字符的字形。

Asciidoctor-PDF 与具有更多字形 (M+ 1p) 的等宽字体打包在一起,但默认情况下不使用它,因为没有斜体或粗体(这将提供类似的 font-doesn' t-have-the-feature-I-want问题)。

要使用它,您需要应用 default-with-fallback-font 主题:

asciidoctor-pdf -a pdf-theme=default-with-fallback-font documentation.adoc

注意:我使用 short-hand 调用来避免换行。关键是在你的调用中添加 -a pdf-theme=default-with-fallback-font 选项。