4.2.12 グラフィック
(1) 固定グラフィック
帳票上に,固定グラフィックを貼り付けられます。固定グラフィックを使用するには,あらかじめWindows形式の固定グラフィックファイルを用意しておく必要があります。利用できるグラフィックデータは,ビットマップファイル(.bmp),メタファイル(.wmf),拡張メタファイル(.emf),またはJPEGファイル(.jpg,.jpeg)です。また,XMAP3が標準提供している固定グラフィックファイルを利用することもできます。なお,JPEGには,JFIF準拠ベースライン形式(基本DCT方式のJFIF01-01,およびJFIF01-02ファイル)だけ使用できます。グラフィックデータのサイズやデータ形式については,「付録D 帳票定義と書式定義の制限値」を参照してください。
固定グラフィックには,レイアウト領域に配置したあと,領域サイズを基準にしてサイズを変更できる印刷方法と,レイアウト領域に配置したままのサイズで固定する印刷方法があります。XMAP3の印刷領域はます目,ミリ,ドット単位でサイズを指定するのに対し,固定グラフィックはドット単位でサイズを変更する上,帳票の印刷精度(dpi)によって単位当たりのドット数が異なるため,印刷の際に何を優先するかで印刷方法を使い分けてください。
帳票でのビットマップ印刷は,解像度の違いから画面での表示と印刷時では,見かけ上の大きさが異なる場合があります。したがって,テスト印刷で印刷結果を確認し,ビットマップの大きさを調整してください。なお,XMAP3では,ビットマップデータは240dpi相当として処理します。
(a) 固定グラフィックを領域サイズに合わせて印刷する
異なる印刷精度(dpi)のプリンタ上で,帳票上の固定グラフィックサイズを同じにしたい場合に使用します。固定グラフィックの属性ダイアログで「領域に合わせて表示する」を指定しておくと,固定グラフィックをレイアウト領域に配置したときに,指定した領域サイズに合わせて印刷されます。ただし,この場合,読み込んだファイル中の固定グラフィックに比べて表示が不鮮明になることがあります。どのプリンタ上でも,見た目にあまり差がないような固定グラフィックを印刷するためには,領域サイズを次のように決めることをお勧めします。
- 帳票の定義前に,異なる印刷精度(dpi)のプリンタ上で,どちらの印刷精度(dpi)でも固定グラフィックが鮮明に読み込める領域サイズを決めます。
- 使用頻度の高い印刷精度(dpi)のプリンタに合わせて領域サイズを決めます。
- サイズが小さいビットマップを大きい領域に表示すると,正常に表示されないことがあります。この場合,ビットマップ自体のサイズを大きくするか,表示領域のサイズを小さくしてください。
(b) 読み込んだままの固定グラフィックを印刷する
固定グラフィックを,読み込んだファイルと同じくらい鮮明に印刷したい場合は,固定グラフィックの属性ダイアログで「領域に合わせて表示する」を指定しません。この場合,固定グラフィックのサイズは,レイアウト領域上で変更できないので,領域よりも読み込んだ固定グラフィックのファイルが大きい場合,はみ出した部分はカットされます。
(c) 固定グラフィックの大きさとカラーの扱い
帳票上に配置する固定グラフィックのサイズと,カラーの扱いについては,「付録D 帳票定義と書式定義の制限値」を参照してください。
(2) 出力グラフィック
描画ソフトであらかじめ作成しておいたグラフィックファイルを,ファイルやクリップボードを経由してAP実行時に印刷する機能です。使用できるグラフィックの形式については,「付録D.2 グラフィックデータの使用条件」を参照してください。
グラフィックデータを帳票に印刷する命令は,AP側で指定します。XMAP3ではグラフィックデータを受け渡す領域を定義します。 APから印刷の命令が来ると,XMAP3は「グラフィックデータの渡し方」に定義したファイル名を入力して,グラフィックデータを帳票上に取り込んで印刷します。
(a) 印刷処理
グラフィックデータ出力の仕組みを次に示します。
![[図データ]](figure/zu031850.gif)
(b) 出力時のAPインタフェース
- イメージデータを表示する場合
イメージデータをスキャナやイメージOCRなどから入力し,ビットマップファイル(.bmp),メタファイル(.wmf),拡張メタファイル(.emf),またはJPEGファイル(.jpg,.jpeg)にしておきます。APからこのファイル名を論理マップに代入し,SEND要求をすると,XMAP3実行支援が指定されたファイルからデータを入力して出力します。APから直接イメージデータを論理マップに代入することはできません。グラフィックデータを格納しておくフォルダは,実行支援の動作をしているPCの「グラフィックフォルダ」です。グラフィックフォルダは表示・印刷セットアップで設定します。
- グラフを印刷する場合
描画ソフトを使用してグラフを作成し,グラフィックデータとしてファイルまたはクリップボードに格納します。日立COBOLで提供するOLE2オートメーション機能を使用することでExcelなどのグラフ作成ツールを呼び出せます。APからこのファイル名を論理マップに代入し,SEND要求をすると,XMAP3実行支援が指定されたファイルからデータを入力して出力します。APから直接イメージデータを論理マップに代入することはできません。グラフィックデータを格納しておくフォルダは,実行支援の動作をしているPCの「グラフィックフォルダ」です。グラフィックフォルダは表示・印刷セットアップで設定します。
![[図データ]](figure/zu031860.gif)
(3) 固定グラフィックおよび出力グラフィックの自由配置
[表示]-[ます目配置]のチェックを外すことで,自由な位置に固定グラフィックおよび出力グラフィックを作成できます。
(4) 実行時の留意事項
(a) グラフの変更による再印刷
グラフを変更して再印刷するには,再度グラフ印刷アプリケーションを操作して,グラフィックデータを作成します。OLE2処理を終了している場合,APの開始から始める必要があります。ただし,OLE2処理はほかのAPを起動するなどの処理をするため,処理が遅くなることが考えられます。グラフを印刷する場合,変更することが考えられるときは,グラフィック作成ごとにグラフ印刷アプリケーションの開始や終了をするのではなく,グラフ印刷アプリケーションを起動しておくなどの配慮が必要です。
(b) グラフィックファイルのフォーマット
XMAP3が扱えるグラフィックファイルフォーマットは,Windowsビットマップ形式(.bmp),Windowsメタファイル形式(.wmf,.emf),またはJPEGファイル形式(.jpg,.jpeg)があります。形式は,ファイル出力の場合はファイル拡張子,クリップボード出力の場合はクリップボード格納形式で判断します。
(c) グラフィックファイルのサイズ
グラフィックデータのサイズの制限値は,印刷処理に必要なWindowsリソース(使用できるメモリ量など)による制限以外はありません。ただし,サイズが大きくなると,データ読み込みや展開などの印刷処理に時間がかかるため,100KB以内にしておくことをお勧めします。
(d) 領域のサイズ/大きさの制限
- 1帳票中の領域の数,または大きさの制限値は帳票サイズによる制限以外はありません。ただし,数やサイズが大きくなってくると,印刷処理に要する時間も大きくなるため,できる限り1個にすることをお勧めします。
- クリップボードはOSが用意するものを使用するため,グラフィックデータは1度に1種類だけの保存・印刷になります。そのため,1帳票中に,複数のグラフィックデータを印刷する場合は,ファイルからの読み込みを併用することになります。
- グラフィックファイルの格納場所は,表示・印刷セットアップで指定した特定のディレクトリ下1か所だけになります。ファイル数の制限値はOSの制限値になります。
- グラフィックデータの印刷はファイル,またはクリップボード内のデータをそのまま印刷します。したがって,回転・縮小・拡大・減色などの操作は,ファイルなどに書き込むAPでオブジェクトのプロパティを操作するなどして,あらかじめ処理しておいてください。ただし,領域サイズがグラフィックデータサイズと異なる場合,領域サイズに合うようにグラフィックデータを拡大縮小する処理は,グラフィックの属性定義時のオプションとして指定できます。
- プリンタに対しグラフィックデータを印刷する場合,グラフィックデータの持つdpi値とプリンタの持つdpi値は通常異なります。そのため,画面表示の大きさと印刷結果の大きさが異なることがあります。なお,XMAP3では,ビットマップデータは240dpi相当として処理します。
- 定義領域よりも大きなグラフィックデータを印刷しようとした場合,定義領域の左上を基準にして,はみ出した部分は切り捨てられて印刷されます。このような場合は,グラフィックの属性ダイアログで「領域に合わせて表示する」を指定するか,運用時に作成するグラフィックデータの大きさをそろえるなどで対処してください。
(e) グラフィックデータの印刷
- カラーのグラフィックデータをモノクロのプリンタで印刷した場合,プリンタドライバの設定によっては意図した結果で印刷されないことがあります。グラフィックデータは,モノクロで作成することをお勧めします。
- グラフィックデータは一般的にデータ量が大きく,そのサイズや個数が多くなるにつれ,処理に要する時間も比例して大きくなります。印刷に要する時間を短縮するためには,1帳票に印刷するグラフィックデータは1個にしたり,大きさを小さくしたりするなどして処理時間を軽減してください。
- Windowsのビットマップ形式のカラーグラフィックデータを印刷する場合には,次のような設定をしたXMAP3印刷サービスを利用することをお勧めします。
- 「印刷モード」に「GDIページプリンタ」を設定する。
- 「グラフィックデータのモノクロ化」に「プリンタドライバにまかせる」を設定する。
これ以外の設定をした場合,XMAP3印刷サービスで印刷できるWindowsのビットマップ形式のカラーグラフィックデータの場合,使用できるグラフィックデータの色に制限があります。使用できる色の範囲については,「付録D.2 グラフィックデータの使用条件」を参照してください。範囲外のカラーグラフィックを使用した場合は破棄されます。
- 固定/出力グラフィックは,Windowsクライアント,およびPCスタンドアロン印刷だけできます。WSサーバ印刷はできません。
(f) クリップボードの利用
- クリップボードへの入出力は,ファイルへの入出力よりも短い時間で処理できます。印刷するグラフィックデータは1個にして,クリップボード経由でXMAP3に引き渡すなどして処理時間を軽減してください。また,ファイルを使用する場合は,RAMディスクに割り当てると印刷性能を確保できる場合があります。
- クリップボードはシステムに一つだけです。そのため,クリップボードを使用する複数のプログラムを同時に動作させると,意図したもの以外のグラフィックが印刷されることがあります。画面表示プログラムと帳票印刷プログラムを同時に実行したときも同じことが考えられますので,そのような運用をする場合には,ファイルからの読み込みで対処してください。
- 表示している画面データを[PrintScreen]キーを使用してクリップボードに貼り付けて印刷する場合,グラフィックデータの色はディスプレイドライバに依存して印刷されます。
(g) カラーデータの扱い
印刷モードをGDIにしたとき,カラーのグラフィックデータを印刷できます。しかし,印刷した場合,ハードウェアに依存した色で印刷されるため,意図したとおりの印刷結果にならないことがあります。したがって,カラーのグラフィックデータは,ユーザが印刷したい内容かをあらかじめ確認し,グラフィックデータとプリントドライバの色を調整してから使用してください。
また,カラーのグラフィックデータをモノクロのプリンタに印刷したいときは,色データのモノクロ変更によって,印刷結果は保証されません。印刷する場合のグラフィックデータの組み合わせについては,「付録D.2 グラフィックデータの使用条件」を参照してください。
(h) 出力グラフ印刷時のイメージファイルの所在
イメージファイルは,印刷するPCから参照できる場所に格納する必要があります。C/Sシステムの場合には,クライアント側にイメージファイルを格納してください。また,クリップボードはサーバ側にあるため,C/Sシステムでは,グラフの印刷ができません。