Markdown-Docx:可将Markdown文件转换为DOCX格式并下载

markdown-docx是什么?

markdown-docx 是一个用于将 Markdown 文件转换为 DOCX 格式的工具,支持浏览器和 Node.js 环境并支持高保真转换。

markdown-docx主要功能

  • 高度保真转换:能够将 Markdown 文件高精度地转换为 DOCX 格式。

  • 图片支持:支持在转换过程中自动下载和处理图片。

  • Markdown 元素支持:支持表格、列表、代码块等各种 Markdown 元素。

  • 超链接与脚注:支持在 DOCX 中保留超链接和脚注。

  • 样式自定义:提供可定制的样式选项。

  • 多环境支持:既可以在浏览器环境中使用,也能在 Node.js 环境中运行。

  • 命令行界面:提供命令行工具方便使用。

Markdown-Docx:可将Markdown文件转换为DOCX格式并下载.webp

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 文档。

Markdown-Docx使用指南.webp

Github:https://github.com/vace/markdown-docx

演示DEMO:https://md-docx.vace.me/

收藏
最新工具
选品酷BigTracker
选品酷BigTracker

一款由BQool比酷尔科技公司开发的专为寻找亚马逊爆款的卖家量身...

云知改写
云知改写

一个基于先进深度语义分析、智能 AI 及文本处理技术开发的论文查...

Remove.photos
Remove.photos

一款免费的图片背景去除工具,能 00% 自动在3秒内去除图片背景...

VideoIdeas Ai
VideoIdeas Ai

一个为 YouTube博主量身定制的视频内容生成工具。它能在短时...

OnePPT
OnePPT

一款创新型AIPPT智能生成工具,提供智能写作、PPT生成、模板...

Hugo
Hugo

一个使用 Go 语言开发的开源静态网站生成器,速度快,灵活性高。...

企鹅读伴
企鹅读伴

腾讯SSV数字支教实验室推出的AI阅读教育产品,由腾讯混元大模型...

Krillin AI
Krillin AI

一款本地的视频翻译、配音和语音克隆的工具,适用于哔哩哔哩、小红书...

Lovart AI
Lovart AI

一个全球首个适用于设计目的的自适应设计AI智能体平台,能将创意转...

ByeCode
ByeCode

一个新一代AI无代码开发平台,通过可视化拖拽组件,用户无需编码即...