Symfoware

Symfowareについての考察blog

wkhtmltopdfでhtmlをpdfに変換

wkhtmltopdf
https://wkhtmltopdf.org/

htmlをpdfに変換してくれるプログラムです。
Ubuntu 18.04で動かしてみました。

プログラムの取得



こちらのダウンロードページから、Linux 64-bit版をダウンロード。
https://wkhtmltopdf.org/downloads.html


$ wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz



tar.xz形式の解凍に手こずりましたが、こちらを参考に。
Linux で tar.xz 形式のファイルを解凍する


$ tar Jxfv wkhtmltox-0.12.4_linux-generic-amd64.tar.xz




htmlからpdfに



こんなhtmlファイルを用意しました。


  1. <html lang="ja">
  2. <head>
  3. <meta charset="UTF-8">
  4. <title>sample</title>
  5. </head>
  6. <body>
  7.     <h3>test page</h3>
  8.     hello world!<br>
  9.     日本語でこんにちは<br>
  10.     <div style="color:red;font-size:2em;font-weight:bold">フォント指定テスト</div>
  11.     <table border="1" cellspacing="1" cellpadding="4" width="100%">
  12.         <thead>
  13.             <tr>
  14.                 <td>項目1</td>
  15.                 <td>項目2</td>
  16.                 <td>項目3</td>
  17.             </tr>
  18.         </thead>
  19.         <tbody>
  20.             <tr>
  21.                 <td>値1−1</td>
  22.                 <td>値1−2</td>
  23.                 <td>値1−3</td>
  24.             </tr>
  25.             <tr>
  26.                 <td>値2−1</td>
  27.                 <td>値2−2</td>
  28.                 <td>値2−3</td>
  29.             </tr>
  30.             <tr>
  31.                 <td>値3−1</td>
  32.                 <td>値3−2</td>
  33.                 <td>値3−3</td>
  34.             </tr>
  35.         </tbody>
  36.     </table>
  37. </body>




pdf変換コマンド実行。

$ wkhtmltox/bin/wkhtmltopdf sample.html tset.pdf

日本語は無理かな?と思っていたのですが、すんなり表示してくれました。
cssも有効になっていますね。

890_01.png


C#からの使用



wkhtmltopdfのラッパーです。

https://github.com/codaxy/wkhtmltopdf

こちらを利用するのが良さそう。
関連記事

テーマ:プログラミング - ジャンル:コンピュータ

  1. 2018/06/09(土) 15:59:09|
  2. 備忘録
  3. | トラックバック:0
  4. | コメント:0
  5. | 編集
<<C# BackgroundWorker 処理状況の通知とキャンセル、複数タスクの実行(.NET Core 2) | ホーム | AWS API GatewayをjQuery $.ajaxで呼び出し時に「No 'Access-Control-Allow-Origin' header is present on the requested resource.」>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
https://symfoware.blog.fc2.com/tb.php/2190-eaedebf4
この記事にトラックバックする(FC2ブログユーザー)