Подтвердить что ты не робот

Pagebreak в уценке при создании pdf

Я создаю PDF текстовый файл уценки с помощью doxygen (1.8.6). Теперь я хочу получить разрыв страницы на определенном этапе в файле уценки, я использовал эту ссылку.

В данной ссылке они упомянули использование ">" для разрыва строки. Но они не упомянули о разрыве страницы. Да, я также могу использовать '>' для разрыва страницы, но мне нужно написать этот символ 5 или более раз в текстовом файле уценки, и это делает файл уценки в странном виде. Есть ли другие способы получить разрывы страниц в файлах уценки?

4b9b3361

Ответ 1

Я столкнулся с этим и решил его, вставив

\ перенос страницы

На самом деле это команда LaTeX, а не Markdown.

Ответ 2

Так как Markdown принимает простой HTML и CSS, просто добавьте эту строку везде, где вы хотите принудительно разбить страницу.

<div style="page-break-after: always;"></div>

Если ваш редактор Markdown не может правильно экспортировать PDF, сначала попробуйте экспортировать его как HTML, затем откройте его в браузере и распечатайте в формате PDF.

Ответ 3

Кавычки против разрывов строк

> не используется для разрывов строк в Markdown. Используется для цитат. Например, следующий код уценки

> A man provided with paper, pencil, and rubber, and
> subject to strict discipline, is in effect a universal machine.

становится

Человек, обеспеченный бумагой, карандашом и резиной и подчиненный строгой дисциплине, по сути является универсальной машиной.

(Это цитата Алана Тьюринга.)

Обратите внимание, как он отображается на желтом фоне с помощью. Если вы изучите сгенерированную разметку, вы найдете используемые теги <blockquote>.

Разрывы строки обычно можно вставить, заканчивая строку двумя или более пробелами (синтаксис Markdown) или используя необработанные теги <br> (большинство процессоров Markdown допускают встроенный HTML). Например (используя для представления пробела), эта уценка

123 Fake Street␣␣
Springfield, USA

становится

123 Fake Street
Спрингфилд, США

Разрывы страниц

Поскольку исходная спецификация Markdown была разработана для вывода в формате HTML (который не имеет понятия страниц), разрывы страниц не поддерживаются.

Doxygen использует LaTeX для создания своих PDF файлов. Кажется, он не поддерживает встроенный LaTeX¹, но вы должны иметь возможность изменить промежуточный файл .tex и затем использовать pdflatex для создания вашего PDF:

  1. Используйте Doxygen для создания файла .tex
  2. Отредактируйте файл .tex вручную, добавьте \newpage везде, где вы хотите, чтобы разрывы страниц
  3. Запустите pdflatex documentation.tex
  4. Изучите documentation.pdf

Этот вопрос может быть полезной ссылкой для шага 3 выше.

XygenDoxygen поддерживает встроенные формулы LaTeX, но я не смог найти упоминаний о произвольных встроенных командах LaTeX, таких как \newpage которые работают в текстовой среде.

Ответ 4

Последний способ обойти это вручную отредактировать HTML-вывод для рендеринга в PDF, как вы хотите.

Ответ 5

Я знаю, что это мертвый вопрос, но я нашел способ, который, по моему мнению, может быть полезен для других, кроме меня.

Вы можете использовать команду \pagebreak внутри невидимого элемента. Таким образом, он работает с латексом и с HTML.

<div style="page-break-after: always; visibility: hidden"> 
\pagebreak 
</div>

Ответ 6

Хотя эти ответы работают, они как бы ломают одну из целей Markdown (MD), которая должна быть очень удобочитаемой как простой текстовый документ, а также способной форматироваться в более насыщенные презентации.

Как только вы начинаете встраивать связку HTML/CSS в текст, вы теряете первый аспект MD. Вы также можете использовать Word, Libre, HTML/CSS и т.д.

Я думаю, что MD будет хорошо добавить последовательность разрывов страниц. Что-то вроде: <<<<>>>> или аналогично операторам форматирования. Я использую это в моем тексте MD. Это не вызывает разрыв страницы в конвертерах PDF или HTML, но его можно узнать как в тех, так и в текстовых формах.