ChromeまたはChromiumを使用してコマンドラインから「PDFとして保存」を出力先に印刷できますか?Chromeの組み込み機能を使用して、htmlファイルをPDFに自動的に変換できるようにしたいと思います。
Print
があるはずSave to PDF
です。また、Googleのサポートページにも明記されています:support.google.com/chrome/bin/…–
ChromeまたはChromiumを使用してコマンドラインから「PDFとして保存」を出力先に印刷できますか?Chromeの組み込み機能を使用して、htmlファイルをPDFに自動的に変換できるようにしたいと思います。
Print
があるはずSave to PDF
です。また、Googleのサポートページにも明記されています:support.google.com/chrome/bin/…–
回答:
Webブラウザ全体を呼び出すのではなく、作業を行うためだけにHTMLレンダリングエンジンを使用してみませんか?使用wkhtmltopdfを変換を実行します。
既存のWebサイトをPDFに変換することもできます
$ wkhtmltopdf http://google.com google.pdf
注:技術的には、Google ChromeのレンダリングエンジンはWeblinkのフォークであるBlinkです。BlinkとWebkitの共通コードは90%を超えるため、同様の結果が得られます。
Chromeはヘッドレスプログラムを開始しました。
これで、pdfを作成できます。たとえば、Windowsの場合、コマンドラインに移動します
C:\Users\{{your_username}}\AppData\Local\Google\Chrome SxS\Application>
それからコマンドを打ってください:
chrome --headless --print-to-pdf="d:\\{{path and file name}}.pdf" https://google.com
--user-data-dir="C:\Users\...\AppData\Local\Google\Chrome\User Data
して、ユーザーのChromeプロファイルで実行できることに注意してください。これは、たとえば、セッションCookieを使用できるため、ユーザーのログインが必要なWebサイトからコンテンツをエクスポートする場合に便利です。
Google Chrome / Chromium 59以降のバージョンを使用している必要があります &これは、MAC OSおよびLinuxユーザーのみが使用できます。
* Windowsユーザーは、バージョン60までしばらく待つ必要があります *
コマンド:
$ google-chrome --headless --disable-gpu --print-to-pdf=file1.pdf http://www.example.com/
$ chromium-browser --headless --disable-gpu --print-to-pdf=file1.pdf http://www.example.com/
参照:https : //developers.google.com/web/updates/2017/04/headless-chrome
編集: Windowsユーザー向けにGoogle Chrome / Chromium 60が公開されました。
CMDでのコマンドの使用:
C:\Program Files\Google\Chrome\Application> chrome.exe --headless --disable-gpu --print-to-pdf=file1.pdf http://www.example.com/
file1.pdfという名前のpdfファイルが保存されます
「C:\ Program Filesまたは(x86)\ Google \ Chrome \ Application \ 60.0.3112.113(chrome-version)\ file1.pdf」
--disable-gpu
最新バージョンではもう必要ないはずです。
https://github.com/fraserxu/electron-pdfは、まさにこの目的のために設計されました。
CLIは次のようになります。 $ electron-pdf http://fraserxu.me ~/Desktop/fraserxu.pdf
electron-pdf http://fraserxu.me test.pdf
の助けで提案されているように、私はあまりにもgooogle.com試してみました
ローカルhtmlファイルからPDFへのバッチ変換に成功し、アプローチを共有しました。
変換したいHTMLファイルのバッチを含むフォルダーに移動します...
for %f in (*.html) do (
start /wait chrome --headless --disable-gpu --print-to-pdf="C:/[DESTINATION FOLDER PATH]%f.pdf" "C:/[SOURCE HTML FILE FOLDER PATH -- ALSO CURRENT FOLDER]%f"
)
注-ファイルパスの%fを無効にしないように、スラッシュを使用する必要があります。