Markdown-Docx:可將Markdown文件轉(zhuǎn)換為DOCX格式并下載
markdown-docx是什么?
markdown-docx 是一個(gè)用于將 Markdown 文件轉(zhuǎn)換為 DOCX 格式的工具,支持瀏覽器和 Node.js 環(huán)境并支持高保真轉(zhuǎn)換。
markdown-docx主要功能
高度保真轉(zhuǎn)換:能夠?qū)?Markdown 文件高精度地轉(zhuǎn)換為 DOCX 格式。
圖片支持:支持在轉(zhuǎn)換過程中自動下載和處理圖片。
Markdown 元素支持:支持表格、列表、代碼塊等各種 Markdown 元素。
超鏈接與腳注:支持在 DOCX 中保留超鏈接和腳注。
樣式自定義:提供可定制的樣式選項(xiàng)。
多環(huán)境支持:既可以在瀏覽器環(huán)境中使用,也能在 Node.js 環(huán)境中運(yùn)行。
命令行界面:提供命令行工具方便使用。
Markdown-Docx安裝
支持使用 npm、yarn 和 pnpm 進(jìn)行安裝:
# 使用 npm npm install markdown-docx # 使用 yarn yarn add markdown-docx # 使用 pnpm pnpm add markdown-docx
基本用法
Node.js 環(huán)境
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();
瀏覽器環(huán)境
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 類進(jìn)行更精細(xì)的控制:
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); }
支持自定義配置選項(xiàng),例如:
imageAdapter:自定義圖片處理函數(shù)
ignoreImage:忽略 Markdown 中的圖片
ignoreFootnote:忽略腳注
ignoreHtml:忽略內(nèi)聯(lián) HTML
gfm:支持 GitHub Flavored Markdown
命令行工具
可以使用全局安裝的 CLI 工具進(jìn)行文件轉(zhuǎn)換:
# 全局安裝 npm install -g markdown-docx # 基礎(chǔ)用法 markdown-docx --input input.md --output output.docx # 簡寫形式 markdown-docx -i input.md -o output.docx
Markdown-Docx使用指南
在左側(cè)編輯區(qū)粘貼入Markdown格式內(nèi)容
右側(cè)區(qū)域?qū)崟r(shí)預(yù)覽效果
瀏覽器右上角點(diǎn)擊"Download Docx"按鈕,在彈出窗口填定文檔基本信息,即可下載 DOCX 文檔。
Github:https://github.com/vace/markdown-docx
演示DEMO:https://md-docx.vace.me/