個人的には、 tcpdf を使用します。これは、fpdfの拡張および保守されたバージョンです。
mpdf サイトから: "mPDFは、UTF-8エンコードHTMLからPHPファイルを生成するPDFクラスです。FPDFおよびHTML2FPDFに基づいており、多くの機能強化。」
mpdfは、言語処理およびUTF-8サポートに関してFPDFよりも優れています。 CJKのサポートについては、フォントの埋め込みだけでなく、フォントのサブセット化もサポートしています(したがって、CJK PDFはオーバーサイズになりません)。 TCPDFとFPDFは、mpdfのUTF-8とフォントのサポートには何もありません。バージョン5.0の時点で、いくつかのオープンソースフォントも付属しています。
これは、各ライブラリの最も基本的な機能のパフォーマンスの領域で、tPDFに対してfPDFがどのように立ち上がるかを簡単に確認したものです。
fPDFを使用して2000 PDFファイルを処理するのに17.0366秒|| tcPDFを使用して2000 PDFファイルを処理するのに79.5982秒
788 fPDF || 1,860 tcPDF
使用されたコードは可能な限り同一で、テキストのないきれいなPDFファイルのみをレンダリングします。これは、2011年6月22日の各ライブラリの最新バージョンも使用しています。
Htmlレンダリングに関しては、mpdfがtcpdfよりも優れていることがわかりました。 CSSスタイルをより良く解析し、元のhtmlと非常によく似たPDFを作成できます。
mpdfは、ボーダー半径やグラデーションなどのCSSをサポートしています。
Html to pdfに関してmpdfがあまり話題にならないのを見て驚いています。
こちらの例をご覧ください http://www.mpdf1.com/mpdf/index.php?page=Examples
請求書、領収書、簡単な印刷などの設計に役立ちました。しかし、ウェブサイト自体は、mpdfから生成されたpdfはサイズが大きくなる傾向があると言っています。
http://sourceforge.net/projects/html2ps/ は、cssと3cを互換的に必要とする場合に最適です。
サーバーにソフトウェアをインストールできる場合は、 http://wkhtmltopdf.org/ を使用することをお勧めします。
Wkhtmltopdfを使用するdrupalモジュールもあります:)
PHPは多くのリソースを使用してHTMLをPDFに変換します。私見では、PHPはそれを行うには適切な言語ではありません(多数の変換または大きなファイルを変換する場合)
個人的にPHPからXSL:FOを生成し、 Apache FOP を使用してPDFに変換します。 PHPネイティブのソリューションではなく、あまり効率的でもありませんが、非常に複雑なレイアウトでPDFを生成する必要がある場合でもうまく機能します。