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

上記の 2 つのコマンドの主な問題は、doc ファイルにページ内の画像が含まれず、フォーマットされたテキストのみが含まれていることです。pdf に含まれる画像も含め、pdf を doc に変換するより良い方法はありますか? 私は 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 クライアント ライブラリと同様に、単純な書式設定されたテキストしか返されませんでした。PDF から Word への変換中は、Linux/Ubuntu で使用できます。

osをインポート sysをインポート

comtypes.clientをインポートする

wdFormatPDF = 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()

このコードは、PDF から Word への変換に Windows マシンで動作しますが、このパッケージは Linux/Debian プラットフォームをサポートできません。PDF から Word への変換に Linux/Debian で同じ実装を行うための提案はありますか?

関連情報