提取Word文档纯文字内容
只支持 Word 2007 及之后版本的 .docx 格式,不支持更老的 .doc 格式。提取只保留文字内容:表格每行输出为一行(单元格用制表符分隔),列表加上「•」或序号前缀,不保留原始的字体、颜色、图片等排版样式。所有处理完全在浏览器本地完成,不会上传你的文件。
「Word 转 TXT」从 .docx 文档里提取纯文字。选择文件后,页面会显示提取出的全部文字,你可以点击「复制全部」,也可以点击「下载txt」保存成文本文件。它只保留文字内容:表格每行输出为一行(单元格之间用制表符分隔),列表会加上「•」或「1.」这样的前缀;字体、颜色、图片、表格边框等样式都不会保留。只支持 Word 2007 及之后版本的 .docx 格式,老版本的 .doc 文件不能直接使用,需要先在 Word 里另存为 .docx。
我们用同一套转换逻辑(mammoth 先转成 HTML,再逐个节点还原为文字)处理了一份事先生成的 .docx 测试文档,文档内容依次是:一个一级标题「季度报告」,一段含加粗和斜体的句子,两条项目符号列表,两条编号列表,一个两行两列的表格(姓名、分数、小明、90),以及一个结尾段落。得到的文字是:「季度报告」,空一行,「这是一段加粗和斜体文字。」,空一行,「• 列表项一」「• 列表项二」(两行相邻),空一行,「1. 第一步」「2. 第二步」,空一行,「姓名[制表符]分数」「小明[制表符]90」(两行相邻),空一行,「结尾段落」。可以看到:加粗和斜体的标记消失,只剩文字;列表前有了圆点或数字;表格每一行是一行文字,单元格之间是制表符,粘贴到 Excel 或 Word 的表格里可以直接还原成行列。
.doc 是 Word 2003 及更早使用的二进制格式,而 .docx 是 Word 2007 起使用的格式,两者的内部结构完全不同,这个工具只能解析后者。解决办法很简单:用 Word 或 WPS 打开该文件,选择「另存为」,类型选 .docx,再重新上传。
工具不会画出表格线,但会保留行列关系:每一行变成一行文字,单元格之间用制表符分隔,复制后粘贴进 Excel 通常会按列分开。如果你需要保留合并单元格等完整的表格结构(这里只补齐空列,不会保留合并关系),可以改用同站的「Word 转 HTML」工具,它的输出里会带有表格标签。
图片不会出现在结果里,也不会有占位符。这个工具的结果就是纯文字,如果需要图片,请回到原文档中操作。
正文文字会被完整读出,列表会补上圆点或数字前缀、表格会变成制表符分隔的行,但这些是工具重新生成的,并不是 Word 里原样的编号和边框。所以结果适合用来取用内容、做搜索或二次编辑,不适合当作格式严谨的存档。
文件在你的浏览器里解析,速度取决于文档大小和设备性能。解析期间会显示「正在提取文字…」,并且文件选择框会被禁用,等结果出来后才能重新选择。没有在代码里设置大小上限。
文件在浏览器里被读成二进制数据,再由页面按需加载的提取库在本地处理,代码中没有把文档上传到服务器的请求。因此文档内容不会离开你的设备。提取结果只保存在当前页面的内存里,关闭或刷新页面后即消失。