0

我正在尝试使用 Pandoc 和 xelatex 从 markdown 生成干净的 PDF。

当我转换:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

我最终有:

溢出的文本

这是我用来生成 PDF 的命令:

/usr/local/bin/pandoc --verbose \
--chapters --from=markdown+yaml_metadata_block -S \
--latex-engine=xelatex \
--listings -H listings-setup.tex \
--template template.pdf \
--toc --chapters \
-o test.pdf \
metadata.yml \
test.md

我使用文档类:report

我从模板内部和我正在使用的额外标题中尝试了不同的东西,但我现在知道 Pandoc 在生成段落时使用什么模板。

我在我的 template.pdf 下看到(从 Pandoc 中提取),但似乎不适用于此处:

\setlength{\emergencystretch}{3em}  % prevent overfull lines
4

1 回答 1

1

你有几种可能。由于 pandoc 使用 LaTeX 生成 PDF,因此这些都改编自这个 LaTeX 答案

  1. 注释正确的语言:

    ---
    lang: en-GB
    ---
    
    rest of document
    
  2. 在单词中使用软连字符来明确表示允许中断的位置。您可以使用 unicode 字符或­pandoc 将自动转换为 LaTeX 等的 HTML 实体。例如;cryp­to­graphy

  3. 通过指定例外\hyphenation{cryp-to-graphy}

于 2016-11-04T09:42:10.083 回答