Пандок, уценка к PDF не переносит длинные слова в абзацы

Я пытаюсь создать чистый PDF из уценки, используя Pandoc и xelatex.

Когда я конвертирую:

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

Я использую класс документа: отчет

Я пробовал разные вещи внутри шаблона и дополнительного заголовка, который я использую, но теперь я представляю, какой шаблон использует Pandoc при создании абзацев.

Я вижу под своим template.pdf (извлеченным из Pandoc), но, похоже, здесь не применяется:

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

1 ответ

У вас есть несколько возможностей. Поскольку pandoc использует LaTeX для генерации PDF, они адаптированы из этого ответа LaTeX:

  1. Аннотируйте правильный язык:

    ---
    lang: en-GB
    ---
    
    rest of document
    
  2. используйте мягкие дефисы внутри слова, чтобы явно обозначить разрешенные места для разрыва. Вы можете использовать символ Unicode или объект HTML ­ какой pandoc автоматически конвертирует для LaTeX и т. д. Например; cryp­to­graphy

  3. Укажите исключения через \hyphenation{cryp-to-graphy}

Другие вопросы по тегам