Быстрый экспорт Markdown-заметок в формат PDF

Зачем конвертировать Markdown в PDF

Формат Markdown идеален для быстрого написания текстов, конспектов и черновиков, но не подходит для итоговой сдачи преподавателю или публикации: у него нет фиксированного формата страниц, полей и колонтитулов. Именно поэтому задача конвертировать markdown в pdf онлайн возникает у каждого студента и инженера, особенно когда требуется распечатать конспект с формулами, таблицами и блоками кода в Markdown.

Способы экспорта: CLI (Pandoc) против онлайн-редакторов

Традиционный путь требует локальной установки утилиты Pandoc и дистрибутива TeX Live весом в несколько гигабайт. Это сложно настроить на рабочем или мобильном устройстве.

В веб-редакторе Labkeeper экспорт md в pdf возможен двумя способами:

  • Markdown-проект и печать браузера. Кнопка «Сохранить в PDF» открывает диалог печати браузера. Выберите «Сохранить как PDF», выключите колонтитулы, чтобы на листе не было адреса страницы и даты, а для заливок и выделений включите «Фоновую графику». Лист повторяет превью: полей по методичке, сносок внизу страницы и оглавления здесь не будет.
  • LaTeX-проект с Markdown-сегментами. Текст пишется в Markdown-сегментах, а после нажатия «Выполнить» сервер переводит их в LaTeX через Pandoc и собирает pdfLaTeX в файл result.pdf. Сноски встают внизу страницы, формулы и таблицы набирает LaTeX, оглавление добавляет команда \tableofcontents в LaTeX-сегменте. Сырой HTML из Markdown при этом выбрасывается.

Стандартная преамбула LaTeX-проекта оставляет поля всего 3–5 мм. Если нужны поля по методичке, начните проект с LaTeX-сегмента со своей преамбулой и командой \begin{document}: тогда стандартная преамбула отключится, а закрывающую команду \end{document} сервер добавит сам. Пакеты, которые нужны тексту из Markdown, подключите в той же преамбуле:

LaTeX
\documentclass[a4paper,12pt]{article}
\usepackage[T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}
\usepackage{amsmath,graphicx,longtable,booktabs,hyperref}
\usepackage[left=30mm,right=15mm,top=20mm,bottom=20mm]{geometry}
\begin{document}

Пример в редакторе открывает LaTeX-проект: LaTeX-сегмент с оглавлением и разрывом страницы, затем Markdown-сегмент с формулой, таблицей и сноской. Нажмите «Выполнить», чтобы получить PDF.

Управление разрывами страниц в PDF

Чтобы при печати Markdown-проекта начать новый раздел со следующего листа, вставьте между абзацами HTML-разделитель:

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

Это правило CSS для печати: в превью разрыва не видно, а браузер учитывает его в диалоге печати. Поддержка зависит от браузера, поэтому проверьте результат в окне предпросмотра печати.

В LaTeX-проекте HTML из Markdown-сегментов выбрасывается, поэтому разрыв делают отдельным LaTeX-сегментом с командой \newpage между Markdown-сегментами.

Рендеринг формул LaTeX и таблиц при экспорте

Главная сложность простых онлайн-конвертеров — потеря сложных математических конструкций. В Markdown-проекте Labkeeper формулы, оформленные по правилам формул в Markdown с MathJax, набирает MathJax прямо в превью, и при печати они попадают в PDF такими же, как на экране.

В LaTeX-проекте формулы из Markdown-сегментов набирает pdfLaTeX, а таблицы становятся таблицами longtable, которые переносятся на следующую страницу.

Практические советы

1

Настройки печати для чистого PDF

В Markdown-проекте кнопка «Сохранить в PDF» и есть печать браузера. В диалоге выберите «Сохранить как PDF», выключите колонтитулы, чтобы на листе не было адреса страницы и даты, и включите «Фоновую графику», если в тексте есть заливки или выделение маркером.

Попробуйте прямо сейчас

Собирайте PDF из Markdown в Labkeeper

Онлайн-редактор Markdown и LaTeX: печать Markdown-проекта в PDF через браузер или PDF из Markdown-сегментов в LaTeX-проекте с формулами, таблицами и сносками.

Другие статьи