« JUnitで DataSource を使う | メイン | PyInstaller: Python のスクリプトを Windows 用の実行ファイル (exe形式) に変換する »

iReportとJasperReportsを使い、画像をJavaプログラム側で差し替える

画像データをInputStreamで受け渡すことによって、Javaプログラム側で画像を指定できる

iReportで、画像のプロパティを設定する

  • Image Expression => $P{imgsrc}
  • Image Expression Class => java.io.InputStream

パラメータの設定をする

  • Parameter name => imgsrc
  • Parameter class type => java.io.InputStream

Javaプログラムでは、パラメータとして imgsrc に 画像のInputStreamを指定する

String imgPath = "images/xx.gif"; //画像ファイルの場所を指定
InputStream imgsrc = new FileInputStream(imgPath);
Map paramMap = new HashMap();
paramMap.put("imgsrc", imgsrc);

//テンプレートXMLのコンパイル
JasperReport jasperReport = JasperCompileManager.compileReport(templatePath);

//データの動的バインド
JasperPrint print = JasperFillManager.fillReport(jasperReport, paramMap, new JREmptyDataSource());

//PDFへ出力
JasperExportManager.exportReportToPdfFile(print, destPath);

トラックバック

このエントリーのトラックバックURL:
http://www.gesource.jp/mt/mt-tb.cgi/56

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2005年10月27日 20:03に投稿されたエントリーのページです。

ひとつ前の投稿は「JUnitで DataSource を使う」です。

次の投稿は「PyInstaller: Python のスクリプトを Windows 用の実行ファイル (exe形式) に変換する」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type 3.35