使用php将pdf转换为word文档

son*_*eze 1 php pdf ms-word doc libreoffice

我正在尝试使用无法在php中使用Libreoffice将pdf转换为doc。

path/to/soffice --infilter="writer_pdf_import" --convert-to doc file.pdf /path/to/test.docx
Run Code Online (Sandbox Code Playgroud)

PS:还有其他更好的解决方案可以解析pdf并提取图像,而不仅仅是文本,然后将其转换为doc表示形式。

Teo*_*cci 5

好吧,您没有向我们显示错误,所以我不知道为什么您的命令不起作用。但是,该命令不是Libreoffice的命令。您正在使用soffice的命令:

此示例使用libreoffice软件:

path/to/libreoffice --headless --invisible --convert-to doc your_source_file.pdf
Run Code Online (Sandbox Code Playgroud)

注意:

此解决方案仅转换文本而没有图像。

选项01:

如果LibreOffice在您的系统上不起作用,则Abiword也会以类似的方式工作。

  1. 通过在终端中键入以下命令来安装Abiword
sudo apt-get install abiword
Run Code Online (Sandbox Code Playgroud)

然后执行转换:

abiword --to=doc your_source_file.pdf
Run Code Online (Sandbox Code Playgroud)

备选方案02:

如果要继续使用soffice的命令,可能可以使用以下语法:

path/to/soffice --headless --convert-to <TargetFileExtension>:<NameOfFilter> your_source_file.pdf
Run Code Online (Sandbox Code Playgroud)

在您的示例中,将“ MS Word 2007 XML”用于doc文件,将“ Microsoft Word 2007/2010/2013 XML”和“ Microsoft Word 2007-2013 XML” docx用作过滤器:

path/to/soffice --headless --convert-to docx:"Microsoft Word 2007/2010/2013 XML" your_source_file.pdf
Run Code Online (Sandbox Code Playgroud)

在这里您可以找到更多过滤器。