我有一个 Word DOCX 文档(不确定它是用哪个版本的 Word 创建的)。我无法将其打印到本地打印机或 PDF 中。在后一种情况下,它会抱怨其中一种字体(Cambria
,我认为该字体用于文档中的数学方程式)。由于 DOCX 只是一个 ZIP 存档,我决定通过在组成 DOCX 的 XML 文件之一中手动将字体的提及替换为另一个字体名称来破解文档。但是,一旦我将文件夹压缩到新的 DOCX 文档中,它就无法加载到 Word 中。我首先尝试了7zip
以下方法:
7z a new_document.docx new_document
new_document
包含手动修改的 XML 文件的所有部分的文件夹在哪里。我得到了MS Office can't open this file because the zip archive file is an unsupported version
。然后我尝试
zip -r new_document.docx new_document
并得到MS Office can't open this file because some parts are missing or invalid
。
尽管我的改动很小,但还是有可能搞砸了。不过,有没有“正确”的方法将文档文件夹压缩回有效的 DOCX?
答案1
7z
您调用和的方式zip
有点错误。它将导致一个 ZIP 存档,其中包含位于new_document
根级别的文件夹。但是,您想要new_document
的内容在根级别。
此外,我认为请记住,您无法使用 Office Open XML 的所有 ZIP 功能,并且(某些)文件需要以特定顺序出现在存档中。不过,对此持保留态度。