DOCX 到 马克当
使用 @docx-editor.dev/docx-to-markdown 将 DOCX 文件转换为 Markdown。 结果包括正文、页、页眉、页脚、评论和跟踪变化.
尝试 DOCX 到 Markdown 演示 或读取 标记下导出指南。 。 。 .
在你开始之前
对于Node.js,在20x放行使用20.6.0版本或后期,或22.3.0版本或后期. 转换器需要WebAssembly并默认使用捆绑字体.
安装软件包
npm install @docx-editor.dev/docx-to-markdown @docx-editor.dev/core
@docx-editor.dev/core 是一个必要的同伴依赖。 安装一个满足转换器对等依赖范围的版本,并输入您的锁定文件 .
转换 DOCX 文件
以下示例在Node.js读取一个本地文件:
import { readFile } from 'node:fs/promises';
import { exportMarkdown } from '@docx-editor.dev/docx-to-markdown';
const docxBytes = await readFile('document.docx');
const result = await exportMarkdown(docxBytes);
console.log(result.markdown);
包含图像
设定 images: true 以包含图像链接和提取字节 :
const result = await exportMarkdown(docxBytes, { images: true });
result.media 包含图像字节及其页面出错。 见 图像工作流程 以保存文件夹、下载 ZIP 或返回主机URL.
保存显示的图像大小
使用 images: { syntax: 'html' } 以生成时包含显示大小 <img> 标签。 尺寸使用整个 CSS 像素. 配置您的渲染器, 允许对 HTML 进行消毒并保留 width 财务报告和审定财务报表 height。默认的Markdown语法没有大小属性.
对于自定义预览,请使用 displayWidthPx 财务报告和审定财务报表 displayHeightPx资产 pixelWidth 财务报告和审定财务报表 pixelHeight 描述图像文件。 转换器会省略裁剪,自转,和浮动的文本包装. 见 保存显示的图像大小。 。 。 .
读取页面输出
文档布局引擎计算出分页符.
for (const page of result.pages) {
console.log(page.number, page.markdown);
console.log(page.headerMarkdown, page.footerMarkdown);
}
result.markdown 包含没有分页符的连续文档文本。 用于未页 .md 下载。 页眉和页脚留在里面 result.pages。 。 。 .
搜索和AI摄入,使用 { displayMode: 'proposed' } 以显示待补插入并隐藏待补删除。 默认, 'all-markup',显示两者.
配置准确布局的字体
字体决定行环绕、表格行高和页边框 result.pages. Markdown并不保留DOCX字体家族,但转换器需要字体测量来计算布局.
从捆绑的通用文档字体的替代品开始。 使用 fonts 以提供作者许可的字体或覆盖替代字体。 使用 fallbackFonts: googleFonts() 从 Google Fonts 中装入缺失的面孔; 它需要网络访问, 并且不会覆盖先前来源已经解决的面孔 .
见 字体设置和排除出错 可运行实例、解析报告和源文档页面引用匹配指南.
运行时间和产出
对于Next.js,使用节点运行时间和 服务器软件包配置。边缘运行时间不支持.
分页符取决于字体,文档特征,以及修订版模式;它们可以不同于创建文档的应用程序. 将文档版本与页面引用一起存储. result.warnings 报告省略了内容和字体问题。 除非启用, 图像会被省略 。 见 产出限制 在使用输出作为完整转录之前.
该软件包使用Apache 2.0许可证,包括评论和履带变化提取. 套装字体保留自己的开源许可证.
今后的步骤
- 配置字体和解决问题的页面布局。 。 。 .
- 包含和传送图像。 。 。 .
- 连接转换器到您的应用程序。 。 。 .
- 审查出口选项和结果字段。 。 。 .