HTMLファイルをPDF(色付き)に変換する方法


30

style.cssを使用し、色のあるHTMLファイルがあります。

<font style=BACKGROUND-COLOR:red; color=white>FOO</font>

Ubuntu 12.04のこのローカルファイルをPDFに「エクスポート」するにはどうすればよいですか?(外観と色は同じままである必要があります)。例:Ctrl+ P-> PDFに印刷しましたが、色が保持されませんでした。オプションを試してみhtmldocました--color..同じ問題です。

コマンドラインからこれを行うのは素晴らしいことです。


回答:


36

LibreOffice Writerでhtmlファイルを開きFile、メニューでを選択しますexport to PDF。それでおしまい。

コマンドラインを使用する場合は、オープンソースツールを使用してHTMLページをPDFに変換する-Linux / OS X / Windowsをご覧ください

ソフトウェアはを使用してインストールできますsudo apt-get install wkhtmltopdf


これはコマンドラインでも同様に自動化できると思います。:)
gertvdijk

@gertvdijk、それは私の能力を超えています。CLI経由でLibOを使用したことはありません。

そこにもこの、wkhtmltopdfは、ですが、私はそれの経験がない:cyberciti.biz/open-source/...

答えとしてポストwkhtmltopdfは、それが問題を解決してください
gaskoピーター・

@gaskopeter、回答を編集することで要求どおりに行われます。

16

Webkit HTMLからPDF:

sudo apt-get install wkhtmltopdf

http://wkhtmltopdf.org/

http://www.cyberciti.biz/open-source/html-to-pdf-freeware-linux-osx-windows-software/

最新バージョンはヘッドレスです(Xサーバーは必要ありません)。

別の可能性:phantomjsは魔法のヘッドレスWebブラウザーであり、これもwebkit htmlに基づいています。特に、ページをPDFとしてエクスポートできます。

http://phantomjs.org


4
OS Xの場合:brew install Caskroom/cask/wkhtmltopdf
ケノーブ

10

WeasyPrintは有望なようです。私は試しwkhtmltopdfましたが、許容できる方法で物事をレンダリングしますが、すべてを適切にレンダリングせず、開くのに何秒もかかるPDFを作成します!

インストール

pip install weasyprint

走る

weasyprint mypage.html out.pdf

ブラウザービューとPDFを同じように見せたい場合は、追加としてCSSを変更すると役立つ場合があります。

/* For converting to PDF */
body {
  width: 210mm; /* A4 dimension */
}
@page {
  margin:0;
  padding: 0;
}

インストールしようとしましたweasypeaseyが、動作しませんでした。:)最初に私はこれをしました:apt-get install python-dev python-pip python-lxml libcairo2 libpango1.0-0 libgdk-pixbuf2.0-0 libffi-dev shared-mime-infoそしてpipをインストールしますpip install weasypeasyが、このエラーが表示されます: Could not find any downloads that satisfy the requirement weasypeasy
clarkk

1
@clarkk私の悪い。それは実際weasyprintです。だからpip install weasyprint
ピチコス

3
weasyprint良いですがwkhtmltopdf、私が思い出すよりも約15倍遅いので、クライアントの要求に応じてレポートを生成するのには適していませんでした。 wkhtmltopdf複雑なレポートでも良い仕事をするように説得することができます...かなりの努力が必要です!
サムワトキンス

素晴らしいそれはcssを保持し、素晴らしいです..
アディティアウルトラ

3

ChromiumまたはChrome用の Web2PDFConverter拡張機能は、WebページをPDFに変換します。

または、このサイトhttp://pdfcrowd.com/のみを使用できます。ローカルファイルの場合:http : //pdfcrowd.com/#convert_by_upload


Firefox + cmd行を使用する方が良いでしょう:P
gaskoピーター

@gaskopeter pdfcrowd.com/#convert_by_upload - Firefoxでそれを開く
ラドゥRădeanu

数学の方程式は1つが印刷可能なバージョンを使用する必要があり、変換されない
アダム

2

あなたは、使用しようとするかもしれPhantomJS使用して、いくつかのコード例rasterize.jsを

phantomjs rasterize.js http://example.com/

または、コメントに示されているように、NodeJS html-pdfnpmパッケージを使用しますGitHubを参照しインストールします:)npm install -g html-pdf。使用法:

html-pdf http://example.com/ example.pdf

NodeJS npmパッケージを使用する準備ができています:html-pdf — phantomjsを使用するHTMLからPDFへのコンバーター。
-ruvim

phantomjs-prebuildが欠落しているため、npmでインストールできませんでした(rootでもアクセス権のために適切にインストールできませんでした)
Martin Thoma

2

他の人から提案されたように、WeasyPrintを試しました。多くのページで適切に変換されず、一部のページではエラーで失敗します。

次のFirefoxアドオンが動作します。Firefox55。Windowsのみと表示されますが、Ubuntuで動作します。

ファイヤーショット


1

HTMLからPDFへのコンバーターであるDompdfGitHubソースコードを確認)を試してください。このライブラリは非常に使いやすく、インストールも非常に簡単です。コンポーザーを使用すると、非常に高速にセットアップできます。

要件:PHP 5.0以降(5.3以降を推奨)、DOM拡張、GD拡張

PHPコードの例:

<?php
// somewhere early in your project's loading, require the Composer autoloader
// see: http://getcomposer.org/doc/00-intro.md
require 'vendor/autoload.php';

// disable DOMPDF's internal autoloader if you are using Composer
define('DOMPDF_ENABLE_AUTOLOAD', false);

// include DOMPDF's default configuration
require_once 'vendor/dompdf/dompdf/dompdf_config.inc.php';


$htmlString = '';
ob_start();
include('html_to_dpf.html');
$htmlString .= ob_get_clean();


$dompdf = new DOMPDF();
$dompdf->load_html($htmlString);
$dompdf->render();
$dompdf->stream("sample.pdf");
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.