2009-08-19 5 views
2

Ok Javaでレポートを作成するときは、JasperReportsテンプレートデザイン用にiReportを使用します。誰かがhtml2pdfをdjangoで試したことがありますか?

しかし、pythonの代わりにhtml2pdf - ピサです。

この例を見るとすばらしいことです。 ヒントをいただければ幸いです。

+0

あなたは何について尋ねていますか? Jasperのレポートを実行するためにJavaを呼び出すDjangoアプリを見たいと思っていますか?なぜ誰かがReportLabを持っているとしたら? –

+0

iReportはJasperReports(java)用のビジュアルレポートツールですから、どのツールがReportlabのビジュアルレポートツールですか? – panchicore

+0

@panchicore:あなたのコメントはあなたの質問に全く一致しません。あなたのコメントが正しい場合は、あなたの質問のタイトルを修正できますか?タイトル、質問、コメントを調和させるのは非常に難しいです。 –

答えて

4

私たちが開発している会計ソフトウェアは、pdfレポートを生成するためにピサを使用しています。

  1. HTMLテンプレート
  2. PDFにレンダリングされた文字列を変換するレンダリング:プロセスは、このようなものです。出力ファイルとして返すHttpResponseオブジェクト、またはStringIOオブジェクトを直接使用して、pdfを保存し、その内容をHttpResponse経由で送信することができます。
  3. HttpResponseオブジェクトのMIMEタイプは、application/pdfに設定し、ブラウザに表示する代わりにダウンロードをトリガーする場合は、Content-Dispositionヘッダーを使用する必要があります。

ピサは、いくつかのユニークなCSSプロパティを使用して、PDF関連の書式設定(ページサイズ、ページ区切りなど)を指定します。彼らの文書はこれに関する十分な例を提供しています。

ピサのHTML/CSSのレンダリングは、ブラウザで通常見られるものとはかなり異なる場合があります。例えば、<table>border="1"を設定すると、テーブルの枠線のすべてのセルを与えるだろう、国境は常に崩壊している(国境崩壊のCSS属性は効果がありません)など

+0

StringIOキャッシングにうまく触れています。 – Thom

関連する問題