如何在 libreoffice 6.4 中将 pdf 转换为 docx?
How to convert pdf to docx in libreoffice 6.4?
我的 ubuntu 18.04 容器中安装了 libreoffice 6.4。
目标是将 pdf 文件转换为 docx。
我已经尝试过这些命令:
libreoffice --headless --convert-to docx:"Microsoft Word 2007/2010/2013 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:"Microsoft Word 2007-2013 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:"MS Word 2007 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:writer_MS_Word_97 /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to "docx:writer_MS_Word_2007" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:writer_OOXML /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to doc /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to "docx:writer_MS_Word_2007" --outdir /pdf pdf.pdf
但他们总是return这条消息:
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : writer_MS_Word_2007
Overwriting: /pdf/pdf.docx
Error: Please verify input parameters... (SfxBaseModel::impl_store <file:///pdf/pdf.docx> failed: 0x81a(Error Area:Io Class:Parameter Code:26))
谁能告诉我发生了什么事?
更新:
我试过这个命令:
libreoffice --infilter="writer_pdf_import" --convert-to docx --outdir /pdf /pdf/pdf.pdf
它return编辑了这条消息:
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : Office Open XML Text
Overwriting: /pdf/pdf.docx
我可以看到它需要 --infilter--
参数,因为输入文件是 pdf。
但是,它正在使用 Office Open XML Text
过滤器,我需要将其切换到 Microsoft Word 2007-2013 XML
,我该怎么做?
我已经尝试过这些但没有用:
libreoffice --infilter="writer_pdf_import" --convert-to docx:"Microsoft Word 2007-2013 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to "docx:Microsoft Word 2007-2013 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to "docx:writer_MS_Word_2007" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to docx:"writer_MS_Word_2007" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to docx:writer_MS_Word_2007 --outdir /pdf /pdf/pdf.pdf
他们总是return这条消息(同上):
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : writer_MS_Word_2007
Overwriting: /pdf/pdf.docx
Error: Please verify input parameters... (SfxBaseModel::impl_store <file:///pdf/pdf.docx> failed: 0x81a(Error Area:Io Class:Parameter Code:26))
我终于找到了解决方法。
希望这对遇到相同问题的任何人都有用。
我做了一个实验,从这个list中一个一个地尝试可能的词过滤器,有4次成功的尝试。
libreoffice --headless --infilter="writer_pdf_import" --convert-to docx --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter='writer_pdf_import' --convert-to docx:"MS Word 2007 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter='writer_pdf_import' --convert-to doc:"MS Word 2007 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter="writer_pdf_import" --convert-to doc --outdir /pdf /pdf/pdf.pdf
但是在这 4 个命令之间,最后一个产生了最好的结果,转换后的文档文件内容与原始文件相比看起来相似,仅供参考,我的文档有一些汉字和 tables,第一个3 个命令没有正确绘制 table 边框,而最后一个命令做到了。
更新:
我决定在 ubuntu 18.04 容器上安装 libreoffice 7.0。
要查看过滤器的详细列表,请转到 here,然后打开其中一个 xcu 文件,过滤器详细信息应该在那里,要使用它,只需从 name 属性中选择,然后像这样使用它这 :
libreoffice --headless --infilter='writer_pdf_import' --convert-to doc:"<enter_filter_name_here>" --outdir /pdf /pdf/pdf.pdf
我的 ubuntu 18.04 容器中安装了 libreoffice 6.4。
目标是将 pdf 文件转换为 docx。
我已经尝试过这些命令:
libreoffice --headless --convert-to docx:"Microsoft Word 2007/2010/2013 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:"Microsoft Word 2007-2013 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:"MS Word 2007 XML" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:writer_MS_Word_97 /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to "docx:writer_MS_Word_2007" /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to docx:writer_OOXML /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to doc /pdf/pdf.pdf --outdir /pdf
libreoffice --headless --convert-to "docx:writer_MS_Word_2007" --outdir /pdf pdf.pdf
但他们总是return这条消息:
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : writer_MS_Word_2007
Overwriting: /pdf/pdf.docx
Error: Please verify input parameters... (SfxBaseModel::impl_store <file:///pdf/pdf.docx> failed: 0x81a(Error Area:Io Class:Parameter Code:26))
谁能告诉我发生了什么事?
更新:
我试过这个命令:
libreoffice --infilter="writer_pdf_import" --convert-to docx --outdir /pdf /pdf/pdf.pdf
它return编辑了这条消息:
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : Office Open XML Text
Overwriting: /pdf/pdf.docx
我可以看到它需要 --infilter--
参数,因为输入文件是 pdf。
但是,它正在使用 Office Open XML Text
过滤器,我需要将其切换到 Microsoft Word 2007-2013 XML
,我该怎么做?
我已经尝试过这些但没有用:
libreoffice --infilter="writer_pdf_import" --convert-to docx:"Microsoft Word 2007-2013 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to "docx:Microsoft Word 2007-2013 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to "docx:writer_MS_Word_2007" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to docx:"writer_MS_Word_2007" --outdir /pdf /pdf/pdf.pdf
libreoffice --infilter="writer_pdf_import" --convert-to docx:writer_MS_Word_2007 --outdir /pdf /pdf/pdf.pdf
他们总是return这条消息(同上):
convert /pdf/pdf.pdf -> /pdf/pdf.docx using filter : writer_MS_Word_2007
Overwriting: /pdf/pdf.docx
Error: Please verify input parameters... (SfxBaseModel::impl_store <file:///pdf/pdf.docx> failed: 0x81a(Error Area:Io Class:Parameter Code:26))
我终于找到了解决方法。
希望这对遇到相同问题的任何人都有用。
我做了一个实验,从这个list中一个一个地尝试可能的词过滤器,有4次成功的尝试。
libreoffice --headless --infilter="writer_pdf_import" --convert-to docx --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter='writer_pdf_import' --convert-to docx:"MS Word 2007 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter='writer_pdf_import' --convert-to doc:"MS Word 2007 XML" --outdir /pdf /pdf/pdf.pdf
libreoffice --headless --infilter="writer_pdf_import" --convert-to doc --outdir /pdf /pdf/pdf.pdf
但是在这 4 个命令之间,最后一个产生了最好的结果,转换后的文档文件内容与原始文件相比看起来相似,仅供参考,我的文档有一些汉字和 tables,第一个3 个命令没有正确绘制 table 边框,而最后一个命令做到了。
更新:
我决定在 ubuntu 18.04 容器上安装 libreoffice 7.0。
要查看过滤器的详细列表,请转到 here,然后打开其中一个 xcu 文件,过滤器详细信息应该在那里,要使用它,只需从 name 属性中选择,然后像这样使用它这 :
libreoffice --headless --infilter='writer_pdf_import' --convert-to doc:"<enter_filter_name_here>" --outdir /pdf /pdf/pdf.pdf