- トップ >
- 製品・サービス >
- biz-Stream >
- サポート情報 >
- 画像出力について
画像出力について
2006年08月01日
biz-Streamで画像出力を行う際に使用する際に、注意したほうがよいポイントについて解説いたします。
1. biz-Streamで利用可能な機能
biz-Streamにて画像出力を行う機能には以下のものがあります。
機能 | 要素名/XMLタグ | 説明 |
---|---|---|
イメージ | <Image> | 画像の表示。AWT*1又はJAI*2のAPIを利用します。 |
シリアライズイメージ | <SerializedImage> | 画像ファイルをシリアライズ化してあらかじめ用意おくことにより、内部処理でAWTやJAIのAPIを使用せずに、画像を出力することが可能になります。 |
白黒2値イメージ | <MonochromeImage> | モノクロ画像として処理します。 |
CCITTFaxイメージ | <CCITTFaxXImage> | CCITTFaxのイメージ(TIFF)を変換せずに埋め込みます。 |
シヤチハタ印影 | <ShachihataBitmap> | シヤチハタ印影形式用。 別途シヤチハタ社の「パソコン決済」ExtentionKitが必要となります。 |
SVGファイル・インポート | <svg:import> | SVG形式ファイルのインポートを行います。 SVG形式画像とは異なり描画命令であり、この描画命令を埋め込みます。 |
JBIG2イメージ | <JBIG2XImage> | JBIG2形式の画像を処理します。JBIG2イメージを変換せずに埋め込みます。 biz-Stream v4.5よりご利用可能です。 |
JPEG2000イメージ | <JPEG2000XImage> | JPEG2000形式の画像を処理します。JPEG2000イメージを変換せずに埋め込みます。 biz-Stream v4.5よりご利用可能です。 |
※1 AWT: Abstract Windowing Toolkit
Javaに標準で付属する画像処理ライブラリ
※2 JAI: Java Advanced Imaging
高機能画像処理ライブラリ。biz-Stream v4.2より同梱していますが、biz-Stream v4.2以前を御利用の場合には別途インストールが必要です。JAIはJava Media APIsのサイトより入手可能です。
「イメージ」及び「シリアライズイメージ」には画像をクリックした際に指定したURIリンク先に接続することが可能な「リンク付きイメージ」及び「リンク付きシリアライズイメージ」があります。
- 《 リンク付きイメージ 》
- 「ページレイアウトタグ リファレンスガイド(基本編)」の「2.3.2 リンク付きイメージ <LinkImage>」をご参照下さい。
- 《 リンク付きシリアライズイメージ 》
- 「ページレイアウトタグ リファレンスガイド(拡張編)」の「2.1.2 リンク付きシリアライズイメージ <LinkSerializedImage>」をご参照下さい。
2. アプリケーションによる画像の変更
biz-Streamでは固定的に画像を表示するだけでなく、アプリケーションより画像を変更することが可能です。
画像の変更方法は通常のデータ設定と同様に、画像ファイルのパス(C:/TEMP/image.jpg や /tmp/image.png)を設定します。
3. 「イメージ<Image>」、「リンク付きイメージ<LinkImage>」のFormat属性
「イメージ<Image>」、「リンク付きイメージ<LinkImage>」のFormat属性の設定を切り替えることによって内部処理で使用するJavaAPIの種類を切り替えることができます。
biz-StreamはFormat属性に「rgb」を指定した場合はAWTのAPIを使用し、「cmyk」を指定した場合はJAIのAPIを使用します。 次のようなケースでFormat属性に「cmyk」(APIとしてJAIを使用する)を指定します。
- 透過GIFやTIFFなどAWTでは扱えない画像を扱いたい場合
- サーバ環境でX Serverに接続できない場合
なお、詳細については「biz-Stream ユーザガイド」の「第1章 biz-Streamの概要 動作サポート環境(biz-Stream) 【Java Advanced Imaging API パッケージ】」をご参照下さい。
4. UNIX/Linux(Windows以外)のOSで画像表示を行った場合に、例外「java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.」が発生する
画像を表示するためAWTのAPIを利用する際に、実行ホスト上でX Serverに接続できないことが原因ですが、次のいずれかの対策を適用することにより正常に画像を表示できます。
《 X Server環境を準備する 》
- 条件: 実行ホスト上でX Serverが稼働している場合のみ。
- 実行ホスト上で、X Serverに接続できる環境を構築します。
biz-Streamが実行するプロセスがX Serverに接続できなければならないため、biz-Streamを実行するプロセス(アプリケーションサーバ、Java VM等)の環境変数DISPLAY="DisplayHost:0.0"の設定が必要となります。
《 要素 <Image>、<LinkImage> の属性 Format に cmyk を設定 》
- 条件: biz-Stream v4.2以前を御利用の場合には別途JAI*2のインストールが必要。
- 画像処理にJAI*2が使用することにより、X Serverとの接続が不要になります。biz-Stream v4.2からJAIのパッケージは同梱されていますが、biz-Stream v4.2以前のバージョンを御利用の場合には別途JAIをインストールしてください。
《 シリアライズイメージを使用する 》
- 条件: 事前にシリアライズ化したイメージファイルが必要。
- 要素 <SerializedImage>、<LinkSerializedImage> を使用します。
画像ファイルをシリアライズ化してあらかじめ用意おくことにより、内部処理でAWTやJAIのAPIを使用せずに、画像を出力することが可能になります。シリアライズイメージの作成方法は「ページレイアウトリファレンスガイド(拡張編) 2.1.1 (3) SerializedImage作成方法」をご参照下さい。
5. (設計図面など)解像度が高い画像ファイルを扱う際に、実行時のメモリ消費量を極力抑えるには
画像ファイルの形式によって次の要素を使用することで実現できます。
- 《 CCITTFaxフォーマット(TIFF CCITT)の画像ファイルの場合 》
- 要素<CCITTFaxXImage>を使用します。CCITTFaxの形式のままでPDFに出力するため、フォーマット画像の場合はこれを使用するとPDF生成時のメモリ消費が少なくなります。
- 《 白黒2値の画像ファイルの場合 》
- 要素<MonochromeImage>を使用します。PDFに出力するときに白黒2値として処理するため、メモリ消費が少なくなります。
6. SVGの対応バージョン
SVG1.0のワーキングドラフト2000/03/03版にて検証しています。
SVG1.0以降の仕様への対応につきましては、今後の検討課題に挙げておりますが、現製品においても、レイアウトへの組み込み時のタグの記述の仕方によって対応できるものが多くあります。SVG1.0以降の利用における問題につきましては、恐れ入りますが個別にお問い合わせください。
7. JBIG2イメージおよびJPEG2000イメージ機能について
biz-Streamv4.5から、JBIG2イメージおよびJPEG2000イメージに対応する機能を追加しました。
イメージ<Image>は画像形式を変換しPDFファイル内部に保存しますが、JBIG2イメージ<JBIG2XImage>およびJPEG2000イメージ<JPEG2000XImage>ではそのままの形式でPDFファイル内に埋め込むことができます。このため、元画像が劣化することなくPDFを作成することが可能です。
通常Adobe Readert等のPDFビューアではJBIG2およびJPEG2000を表示することが可能です。
また、現在JBIG2イメージ<JBIG2XImage>およびJPEG2000イメージ<JPEG2000XImage>はPDF生成のみ有効です。ダイレクト印刷機能/バッチ印刷機能/Excel出力には未対応です。
8. 変更履歴
-
- ● 2012/02/17
- java.awt.headlessを設定すると動作する旨の記載が、正しく動作しないため削除。
- ● 2010/07/12
- biz-Stream v4.5よりJBIG2およびJPEG2000に対応した記述を追加。