Markdown-Docx: конвертация Markdown в DOCX с возможностью скачивания
Что такое markdown-docx?
markdown-docx — это инструмент для преобразования файлов Markdown в формат DOCX, поддерживающий работу как в браузере, так и в среде Node.js, и обеспечивающий высокую точность преобразования.
Основные возможности markdown-docx
Высокоточное преобразование: способен с высокой точностью преобразовывать файлы Markdown в формат DOCX.
Поддержка изображений: автоматическая загрузка и обработка изображений в процессе преобразования.
Поддержка элементов Markdown: поддерживаются таблицы, списки, блоки кода и другие элементы Markdown.
Гиперссылки и сноски: сохранение гиперссылок и сносок в DOCX.
Настройка стилей: предоставляются настраиваемые параметры стилей.
Поддержка нескольких сред: работает как в браузере, так и в среде Node.js.
Интерфейс командной строки: предоставляется инструмент CLI для удобного использования.

Установка Markdown-Docx
Поддерживается установка с помощью npm, yarn и pnpm:
# 使用 npm npm install markdown-docx # 使用 yarn yarn add markdown-docx # 使用 pnpm pnpm add markdown-docx
Базовое использование
Среда Node.js
import fs from 'node:fs/promises';
import markdownDocx, { Packer } from 'markdown-docx';
async function convertMarkdownToDocx() {
const markdown = await fs.readFile('input.md', 'utf-8');
const doc = await markdownDocx(markdown);
const buffer = await Packer.toBuffer(doc);
await fs.writeFile('output.docx', buffer);
console.log('Conversion completed successfully!');
}
convertMarkdownToDocx();Браузерная среда
import markdownDocx, { Packer } from 'markdown-docx';
async function convertMarkdownToDocx(markdownText) {
const doc = await markdownDocx(markdownText);
const blob = await Packer.toBlob(doc);
const url = URL.createObjectURL(blob);
const a = document.createElement('a');
a.href = url;
a.download = 'document.docx';
a.click();
URL.revokeObjectURL(url);
}
document.getElementById('convert-btn').addEventListener('click', () => {
const markdown = document.getElementById('markdown-input').value;
convertMarkdownToDocx(markdown);
});Расширенное использование
Для более точного управления можно использовать класс MarkdownDocx:
import { MarkdownDocx, Packer } from 'markdown-docx';
import fs from 'node:fs/promises';
async function convertWithOptions() {
const markdown = await fs.readFile('input.md', 'utf-8');
const converter = new MarkdownDocx(markdown);
const doc = await converter.toDocument({
title: 'My Document',
creator: 'markdown-docx',
description: 'Generated from Markdown'
});
const buffer = await Packer.toBuffer(doc);
await fs.writeFile('output.docx', buffer);
}Поддерживаются настраиваемые параметры конфигурации, например:
imageAdapter: пользовательская функция обработки изображений
ignoreImage: игнорировать изображения в Markdown
ignoreFootnote: игнорировать сноски
ignoreHtml: игнорировать встроенный HTML
gfm: поддержка GitHub Flavored Markdown
Инструмент командной строки
Для преобразования файлов можно использовать глобально установленный инструмент CLI:
# 全局安装 npm install -g markdown-docx # 基础用法 markdown-docx --input input.md --output output.docx # 简写形式 markdown-docx -i input.md -o output.docx
Руководство по использованию Markdown-Docx
Вставьте содержимое в формате Markdown в область редактирования слева
В области справа отображается предварительный просмотр в реальном времени
Нажмите кнопку «Download Docx» в правом верхнем углу браузера, заполните основную информацию о документе во всплывающем окне и скачайте документ DOCX.

Github:https://github.com/vace/markdown-docx
Демонстрация:https://md-docx.vace.me/
Помощник сценариста▸
AI Приложения
AI Новости 