Писать в Markdown удобно, но получатели документа чаще ждут веб-страницу или PDF. Хорошая новость: конвертировать Markdown легко, и в большинстве случаев сложный набор инструментов не нужен.
Ниже — четыре способа, от самого быстрого до самого гибкого, и советы, с которыми результат будет выглядеть профессионально.
Краткое сравнение
| Способ | HTML | Что установить | Лучше всего для | |
|---|---|---|---|---|
| Экспорт из браузерного редактора | ✅ | ✅ (печать) | Ничего | Повседневных документов, быстрого обмена |
| VS Code + расширение | ✅ | ✅ | Редактор + расширение | Тех, кто уже пишет в VS Code |
| Pandoc | ✅ | ✅ | Pandoc (+ PDF-движок) | Книг, статей, автоматизированных конвейеров |
| Скрипт (markdown-it, marked) | ✅ | — | Node.js | Собственных сайтов и шагов сборки |
1. Экспорт из браузерного редактора
Самый быстрый путь — редактор, который умеет экспортировать сам. В Markdown Preview Editor откройте или вставьте документ — в онлайн-версии или в своей копии — и воспользуйтесь кнопками в шапке:
- HTML создаёт один самостоятельный
.html-файл. Стили, подсветка кода, формулы, диаграммы и картинки, открытые вместе с документом, встраиваются в него, поэтому файл правильно выглядит на любом компьютере, и его можно как есть приложить к письму или загрузить куда угодно. - Печать открывает диалог печати браузера. Выберите в качестве принтера Сохранить как PDF — и получите PDF. Печатается только готовый документ: без панели инструментов и без редактора.
- Сохранить скачивает исходник Markdown в виде
.md-файла.
Поскольку всё происходит в браузере, так можно обрабатывать и документы, которые вы не хотели бы загружать в онлайн-конвертер.
Как получить аккуратный PDF из диалога печати
- Установите Поля в значение По умолчанию или Минимальные — в зависимости от того, сколько текста хотите уместить на странице.
- Отключите Колонтитулы, чтобы убрать дату и адрес с краёв страницы.
- Включите Фон, если нужны фон блоков кода и полосы в таблицах.
- Печатайте в светлой теме — это экономит краску, и на бумаге так легче читать.
2. VS Code с расширением
В VS Code есть встроенный предпросмотр Markdown, но нет кнопки экспорта. Расширения вроде Markdown PDF или Markdown Preview Enhanced добавляют команды экспорта в HTML и PDF. Это удобно, если VS Code уже ваш основной редактор; оформление результата зависит от расширения, а некоторые из них при первом запуске скачивают headless-браузер.
3. Pandoc — универсальный конвертер
Pandoc переводит документы между десятками форматов и считается стандартным инструментом для книг, научных статей и автоматической генерации документации. После установки конвертация — это одна команда:
bash# Markdown в полноценную HTML-страницу
pandoc report.md -o report.html --standalone --metadata title="Report"
# Markdown в PDF (нужен PDF-движок, например дистрибутив LaTeX)
pandoc report.md -o report.pdf --pdf-engine=xelatex
# Markdown в Word, если без него никак
pandoc report.md -o report.docx
Без --standalone Pandoc выдаёт только фрагмент HTML — это удобно, если вы вставляете его в готовую страницу. Для PDF нужен отдельный движок: дистрибутив LaTeX или движок на основе HTML, например WeasyPrint. Сильная сторона Pandoc — контроль: шаблоны, библиография, нумерация разделов и перекрёстные ссылки.
4. Несколько строк JavaScript
Если Markdown — часть вашего сайта или процесса сборки, самый гибкий вариант — библиотека. Например, markdown-it:
jsimport MarkdownIt from 'markdown-it';
import { readFileSync, writeFileSync } from 'node:fs';
const md = new MarkdownIt({ linkify: true, typographer: true });
const body = md.render(readFileSync('README.md', 'utf8'));
writeFileSync('README.html', `<!doctype html><meta charset="utf-8"><title>README</title>${body}`);
Плагины добавляют сноски, списки задач, формулы и многое другое. Помните: результат безопасен ровно настолько, насколько безопасны входные данные. Если Markdown пишут другие люди, очищайте HTML (например, с помощью DOMPurify) перед публикацией.
Советы для лучшего HTML и PDF
Начните с одного понятного заголовка
Конвертеры берут заголовок документа из имени файла, первого заголовка или явно заданных метаданных. Дайте каждому документу говорящее имя файла и единственный заголовок # — и экспортированные HTML и PDF легко будет узнать в папке загрузок или во вкладке браузера.
Храните картинки рядом с документом
Используйте относительные пути вроде images/chart.png и держите файлы в той же папке. Если открыть папку целиком в Markdown Preview Editor, картинки подставятся и встроятся в экспортированный HTML. Внешние картинки, не загруженные в предпросмотре, тоже не встраиваются.
Управляйте разрывами страниц
Синтаксиса для разрыва страницы в Markdown нет. Для печатных документов начинайте крупные разделы с заголовка ## и делайте таблицы короткими: браузеры стараются не разрывать строки таблицы, но огромная таблица всё равно перейдёт на следующую страницу. В инструментах, которые допускают сырой HTML и встроенные стили, например в Pandoc, можно вставить <div style="page-break-after: always"></div>.
Проверяйте формулы и диаграммы перед экспортом
В большинстве инструментов формулы и диаграммы отрисовывают JavaScript-библиотеки. Сначала проверьте их в предпросмотре — см. наши руководства о формулах в Markdown и о диаграммах Mermaid. В HTML-экспорте Markdown Preview Editor они сохраняются как готовая разметка и изображения, поэтому экспортированному файлу скрипты не нужны.
Выбирайте тему осознанно
Тёмный HTML приятен на экране, но плохо подходит для бумаги. Экспортируйте под тот носитель, с которого будут читать.
Частые вопросы
Как бесплатно конвертировать Markdown в PDF?
Откройте документ в программе предпросмотра Markdown, например в Markdown Preview Editor, нажмите Печать и выберите Сохранить как PDF в диалоге печати. Для автоматической обработки или книжной вёрстки используйте бесплатную консольную утилиту Pandoc.
Как конвертировать Markdown в HTML без установки программ?
Воспользуйтесь браузерным редактором с экспортом в HTML. Markdown Preview Editor создаёт самостоятельный HTML-файл со встроенными стилями прямо в браузере.
Попадут ли картинки в экспортированный HTML?
Локальные картинки, открытые вместе с документом, встраиваются в HTML-файл, так что он работает сам по себе. Картинки, которые остаются на внешних серверах, не встраиваются.
Можно ли конвертировать Markdown в Word (DOCX)?
Да, с помощью Pandoc: pandoc input.md -o output.docx. Другой вариант — экспортировать HTML и открыть его в Word: большая часть форматирования сохранится.