48

私はしばらくの間 htmldoc を使用してきましたが、いくつかのかなり深刻な制限に遭遇しました。Linux ボックスで動作する最終的なソリューションが必要です。このライブラリ/ユーティリティ/アプリケーションを Perl アプリから呼び出すので、Perl インターフェイスはボーナスになります。

4

16 に答える 16

73

この古い投稿を見つけて申し訳ありませんが、最高の HTML/PDF 変換ツールを検索した結果、最初に出てきました。Linux では、wkhtmltopdfは非常に優れており (とりわけ CSS を考慮に入れる)、GPL です。

于 2010-05-07T09:29:01.700 に答える
23

WeasyPrintは、選択可能なテキストとハイパーリンクを含む素敵な PDF を生成します。

weasyprint input.html output.pdf

代わりに使用する場合はwkhtmltopdf、次のオプションを試してください。

wkhtmltopdf --margin-bottom 20mm --margin-top 20mm --minimum-font-size 16 ...
于 2016-04-28T20:24:30.133 に答える
8

注: この回答は 2008 年のもので、現在はおそらく正しくありません。他の回答を確認してください

PrinceXMLは私が見た中で最高のものです (通常の HTML と XML/XHTML を解析します)。どのように最高ですか?まあ、それはかなり印象的だと思ったacid2テストに合格しました

ただし、かなり高価です

于 2008-10-07T01:54:16.393 に答える
7

私はあなたのために少しグーグルをして、2つのオプションを思いつきました. 他にもあるかもしれませんが、私の Google 戦略は、「webkit コマンドライン pdf」と「gecko コマンドライン pdf」を試して、基本的にコマンドライン レンダラーに 2 つの人気のあるオープンソース レンダリング エンジンを組み込んだコマンドライン プログラムを探すことでした。これが私が見つけたものです:

Firefox コマンドライン プリンター- pdf および png への出力

wkpdf - これは mac 用ですが、おそらくかなり移植性があります。

于 2008-10-07T01:38:58.063 に答える
3

これが「最良の」ソリューションであると主張するつもりはありませんが、これは私が使用した「1つの」ソリューションです。

HTML 入力 --> HTML 2 PS --> PS 2 PDF --> PDF 出力

于 2008-10-06T22:40:36.630 に答える
1

これは完全にやり過ぎですが、mirthをダウンロードしてインストールできます。これはメッセージ ルーティング エンジンですが、html を pdf に変換する機能があるため、フォルダー内の html ファイルを取得して pdf に変換し、pdf を同じフォルダーまたは別のフォルダーにドロップするように設定できます。私が言ったように、やり過ぎで、少し学習曲線がありますが、無料であり、Java であるため、必要に応じて Linux で実行できます。そして、perl アプリがしなければならないことは、html をファイルにドロップすることだけです。

于 2008-10-06T22:45:45.590 に答える
1

ここで回答されていない別の解決策は、API を使用することです。

それらの利点は、ジョブに必要なリソースを外部化し、最新の機能を実装する最新のサービスを利用できることです (コードを更新したり、バグ修正をインストールしたりする必要はありません)。

たとえば、PDFShiftを使用すると、次の単一の POST リクエストでそれを実行できます。

投稿https://api.pdfshift.io/v2/convert/

"source"(URL または生の HTML コードのいずれか)を渡すと、PDF がバイナリで返されます。(免責事項: 私は PDFShift で働いています)。

Python のコード サンプルを次に示します。

import requests

response = requests.post(
    'https://api.pdfshift.io/v2/convert/',
    auth=('user_api_key', ''),
    json={"source": "https://en.wikipedia.org/wiki/PDF", "landscape": False, "use_print": False}
)

response.raise_for_status()

with open('wikipedia.pdf', 'wb') as f:
    f.write(response.content)

PDF は ./wikipedia.pdf にあります。

于 2019-04-09T11:54:13.680 に答える
1

http://phantomjs.org/をご覧ください。

変換は、小さなスクリプトrasterize.jsを発行して実行できます。

phantomjs rasterize.js 'http://en.wikipedia.org/w/index.php?title=Jakarta&printable=yes' jakarta.pdf
于 2015-03-29T21:58:30.500 に答える
0

wkhtmltopdf と wkhtmltoimage は、Qt WebKit レンダリング エンジンを使用して HTML を PDF やさまざまな画像形式にレンダリングするオープン ソース (LGPLv3) コマンド ライン ツールです。これらは完全に「ヘッドレス」で実行され、表示または表示サービスを必要としません。

それの使い方?

  1. コンパイル済みのバイナリをダウンロードするか、ソース https://wkhtmltopdf.org/downloads.htmlからビルドします

    https://github.com/wkhtmltopdf/wkhtmltopdf

  2. PDF (または画像) に変換する HTML ドキュメントを作成します。

  3. ツールを使用して HTML ドキュメントを実行します。

使用法: wkhtmltopdf input.html output_name.pdf

于 2020-12-27T07:31:58.043 に答える
-1

Peernet ( http://www.peernet.com/conversion-software/batch-document-converter/ ) の「Document Conversion Service」をチェックしてみてください。これは、Windows デスクトップまたは Windows Server マシンでサービスとして実行されます。Web ブラウザーで HTML ドキュメントを開き、プリンター ドライバーを介してそれらを印刷して PDF ドキュメントを作成するため、作成された PDF ドキュメントは、ブラウザーから HTML ドキュメントを印刷した場合とまったく同じように見えます。

于 2014-03-04T17:30:48.317 に答える