从 bash 命令行将 PDF 转换为 Word 的正确方法

从 bash 命令行将 PDF 转换为 Word 的正确方法

我需要在 debian 服务器上将 1K pdf 文件转换为 doc。我可以使用 libreoffice 命令行将 PDF 转换为 Word:

libreoffice --headless --invisible --convert-to doc Sample-doc-file-100kb.pdf

或者使用soffice:

soffice --nocrashreport --nologo --nolockcheck --nofirststartwizard --invisible --headless --convert-to doc Sample-doc-file-100kb.pdf

上述两个命令的主要问题是文档文件不包含页面中的图像,它只包含格式化的文本。有没有更好的方法将 pdf 转换为 doc,包括 pdf 中存在的图像?我对 zamzam 这样的 Web 服务不感兴趣,我需要从服务器上的命令行执行此操作。谢谢。

答案1

你可以试试abiword软件。例如:

abiword --to=doc 示例.pdf

答案2

我设法用这个来做到这一点:

libreoffice --infilter=="writer_pdf_import" --headless \
--convert-to doc:"writer_pdf_Export" Brief.pdf  

它给我的输出与 @igiannak 的答案相同。

答案3

任何直接命令行界面命令都可用于 pdf 到 docx 转换,包括 pdf 中存在的图像,我尝试了 libreoofice 和 soffice 命令,它只提供简单格式的文本,就像任何其他 pywin32 com clinet 库在 pdf 到 word 期间可在 linux/ubuntu 上使用转换

导入操作系统导入系统

导入 comtypes.client

wd格式PDF = 17

def covx_to_pdf(infile, outfile): """将 Word .docx 转换为 PDF"""

word = comtypes.client.CreateObject('Word.Application')
doc = word.Documents.Open(infile)
doc.SaveAs(outfile, FileFormat=wdFormatPDF)
doc.Close()
word.Quit()

此代码可在 Windows 机器上进行 pdf 到 word 的转换,但此软件包不支持 linux/debian 平台。对于在 Linux/debian 上进行 pdf 到 word 转换的相同实现,我们有什么建议吗

相关内容