Hitachi

PRINT DATA EXCHANGE for Open


2.1.3 印刷データの種類と形式

PDE for Openは,次の印刷データを変換対象とします。

図2‒1 印刷データの種類

[図データ]

PDE for Openが変換対象とする印刷データの形式および詳細を次に示します。

図2‒2 印刷データの形式(ファイル形式1の場合)

[図データ]

図2‒3 印刷データの形式(ファイル形式2の場合)

[図データ]

 UAPで意識する内容です。ほかに制御情報が自動的に付加されます。

図2‒4 印刷データの形式(ファイル形式3の場合)

[図データ]

表2‒6 印刷データの詳細

対象とする項目の分類

ファイル形式1

ファイル形式2

ファイル形式3

COBOL UAP形式

Windows UAP形式

文字コード

  • シフトJIS

  • Unicode(UTF-8)※1

  • シフトJIS

  • Unicode(UTF-8)※1

シフトJIS

  • シフトJIS

  • Unicode(UTF-8)※1

レコードの区切り※2

  • 改行(0A)16

  • 復帰(0D)16

  • 改ページ(0C)16

復帰改行(0D0A)16

レコード区切り文字はありません。

  • 改行(0A)16

  • 復帰(0D)16

  • 改ページ(0C)16

プリンタ制御文字

  • 機械制御文字

  • ANSI制御文字

  • 制御文字なし

  • ANSI制御文字

  • 制御文字なし

  • 機械制御文字

  • ANSI制御文字

  • 制御文字なし

  • 機械制御文字

  • ANSI制御文字

  • 制御文字なし

実レコードデータの形式

  • 文字列レコード

  • SETPRTテキストレコード

  • 画像データレコード

  • 任意座標指定文字レコード

  • 文字列レコード

  • SETPRTテキストレコード

  • 画像データレコード

  • 任意座標指定文字レコード

  • 文字列レコード

  • SETPRTテキストレコード

  • 画像データレコード

  • 任意座標指定文字レコード

  • 文字列レコード

  • SETPRTテキストレコード

  • 画像データレコード

  • 任意座標指定文字レコード

ファイルサイズ

上限なし

上限なし

上限なし

上限なし

レコードサイズ※3

2,048バイトまで

2,048バイトまで

2,048バイトまで

2,048バイトまで※4

注※1

基底文字と結合文字による文字の結合には対応しません(「か゜」などを1文字として出力できません)。また,結合は使用しないでください。結合を使用した場合,出力結果は不正になります。

注※2

機能キャラクタ中にある(0A)16,(0D)16,(0C)16,(0D0A)16は除きます。

注※3

ファイルの先頭にUnicodeのBOMがある場合,先頭レコードはBOMを含めて2,048バイトまでとなります。

注※4

ファイル形式3では,機械制御文字(英数字2バイト)を1バイトとして扱います。また,機能キャラクタのバイト数は,バイナリデータへ変換後のバイト数で換算します(例:"!&@[1A468C]"の場合,(1A468C)16の3バイトして扱います)。

入力データがどのような形式であるかは,次のように指定します。

〈この項の構成〉

(1) 文字コード

ファイル形式1またはファイル形式3の場合,シフトJISまたはUnicode(UTF-8)の入力データに対応します。ファイル形式2の場合,シフトJISの入力データに対応します。

Unicodeの基底文字と結合文字による文字の結合には対応しません(「か゜」などを1文字として出力できません)。

結合を使用した場合,文字は結合されず,別々の文字として出力されます。ただし,Windows Vista以降でGDI出力の場合,文字は結合されますが,次に出力される文字の位置は結合されない場合と変わりません。

(2) レコードの区切り

ファイル形式1の場合,Windows制御文字によってレコードの区切りを認識します。COBOL UAP形式では,改行(0A)16,復帰(0D)16,改ページ(0C)16までを1レコードとし,Windows UAP形式では復帰改行(0D0A)16までを1レコードとしてPDL変換します。

ファイル形式2の場合,レコードの区切り文字はありません。

ファイル形式3の場合,改行(0A)16,復帰(0D)16,改ページ(0C)16までを1レコードとしてPDL変換します。

(3) 改行制御

ジョブ属性として指定されたプリンタ制御文字(機械制御文字・ANSI制御文字・制御文字なし)に従います。

機械制御およびANSI制御の場合は,レコードの先頭1バイト(ただし,ファイル形式3の機械制御のみ先頭2バイト)を制御文字とします。なお,制御文字のないレコード(ファイル形式1やファイル形式3の場合,レコード区切り文字だけのレコード)は無視されます。

制御文字なしの場合は,ファイル形式1やファイル形式3ではレコード区切りとして使用したASCII制御文字で改行・改ページを制御し,ファイル形式2では出力後1行改行します。

なお,ANSI制御文字は,ASCIIコードに変換する必要があります。通常は,COBOLソース移行時の文字コード変換作業でASCIIコードに変換されますが,ANSI制御文字を16進で指定している場合は正しくコード変換できないため,対応するASCIIコードに変更する必要があります。

PDE for Openで対応しているプリンタ制御文字については「6.1.4 改行制御の扱い」を参照してください。

(4) 実レコードデータの形式

各レコードからプリンタ制御文字およびレコード区切り文字を除いた部分を,実レコードデータと呼びます。実レコードデータの形式として文字列レコード,SETPRTテキストレコード,画像データレコード,および任意座標指定文字レコードが扱えます。

PDE - LP Optionを利用する場合は,次のレコードおよび情報は無効になります。

なお,実レコードデータがないレコードでも改行制御は行われます。

(a) 文字列レコード

印字データ用のレコードです。文字列レコードには,文字コードのほかに機能キャラクタも使用できます。機能キャラクタについては,「6.1.8 機能キャラクタの扱い(ファイル形式1またはファイル形式2の場合)」を参照してください。

(b) SETPRTテキストレコード

ジョブ属性変更用のレコードです。印刷途中でFCBや書式などのジョブ属性を変更したい場合に使用します。メインフレームで使用していたSETPRTレコード形式とは文字コードや領域サイズなどが異なるため,業務プログラム作成時には注意が必要です。なお,このレコードを指定した場合は,必ず改ページされるため,同時に指定されたプリンタ制御文字は無効となります。SETPRTテキストレコードの形式について次に示します。

表2‒7 SETPRTテキストレコードの形式

位置

(10進)

長さ

内容

形式

備考

0

1

データ種別

JIS8

空白(20)16

SETPRTテキストレコード識別子。

16進値

(00)16(COBOL UAP形式用)

1

7

データ識別子

JIS8

'*HITAC*'固定

8

4

FCBイメージ名

JIS8

英数字,'#','@','_'

左詰めで後部に空白(20)16

指定なしは空白(20)16埋め

指定なしの場合は,ファイル名またはジョブ定義XMLファイル,もしくは環境設定ユティリティで指定したFCBイメージ名を使用します。

12

4

予備

JIS8

空白(20)16埋め

16

4

システム使用領域

JIS8

空白(20)16埋め

20

4×4

CHARS情報

4個まで指定できる

[図データ]

4

CHARSイメージ名

JIS8

英数字,'#','@','_'

左詰めで後部に空白(20)16

指定なしは空白(20)16埋め

指定なしの場合は,ファイル名またはジョブ定義XMLファイルで指定したCHARSイメージ名を使用します。

36

1

システム領域

JIS8

空白(20)16埋め

37

3

予備

JIS8

空白(20)16埋め

40

3

ページ複写枚数

JIS8

10進で001〜255の範囲で入力

右詰めで前部に0(30)16

指定なしは0または空白(20)16埋め

指定なしの場合は,オプションによって動作が変わります。

43

1

予備

JIS8

空白(20)16埋め

44

3

予備

JIS8

空白(20)16埋め

47

1

予備

JIS8

空白(20)16埋め

48

4

外字フォント名

JIS8

英数字,'#','@','_'

左詰めで後部に空白(20)16

指定なしは空白(20)16埋め

指定なしの場合は,ファイル名またはジョブ定義XMLファイル,もしくは環境設定ユティリティで指定した外字フォント名を使用します。

52

4

予備

JIS8

空白(20)16埋め

56

4

システム領域

JIS8

空白(20)16埋め

60

4

予備

JIS8

空白(20)16埋め

64

4×8

書式オーバレイイメージ情報

8個まで指定できる

(複数のイメージ名を指定する場合,途中のイメージ名を指定なしにしないでください)

4

書式オーバレイイメージ名

JIS8

英数字,'#','@','_'

左詰めで後部に空白(20)16

指定なしは空白(20)16埋め

8個すべてが指定なしの場合は,オプションによって動作が変わります。

96

3×8

書式オーバレイイメージ適用枚数情報

8個まで指定できる

書式オーバレイイメージ情報の定義順に指定

(複数の適用枚数を指定する場合,途中の適用枚数を指定なしにしないでください)

3

書式オーバレイイメージ適用枚数

JIS8

10進で001〜255の範囲で入力

右詰めで前部に0(30)16

指定なしは0または空白(20)16埋め

指定なしの場合は,対応する書式オーバレイイメージ名の指定があるときは255となります。対応する書式オーバレイイメージ名の指定がないときはオプションによって動作が変わります。

120

1

予備

JIS8

空白(20)16埋め

121

4

デフォルト機能キャラクタイメージ名

JIS8

英数字,'#','@','_'

左詰めで後部に空白(20)16

指定なしは空白(20)16埋め

指定なしの場合は,ファイル名またはジョブ定義XMLファイル,もしくは環境設定ユティリティで指定したデフォルト機能キャラクタイメージ名を使用します。

125

4

予備

JIS8

空白(20)16埋め

129

1

印刷面スキップ

JIS8

'R':次のデータは表面へ印刷

'V':次のデータは裏面へ印刷

指定なしは空白(20)16埋め

メインフレームではバイナリ情報のため,業務プログラム移行時にはテキスト形式に変更する必要があります。指定なしの場合は印刷面制御しません。

130

1

予備

JIS8

空白(20)16埋め

131

1

ホッパの変更種別

JIS8

'I':初期状態に戻す

'Y':変更する

指定なしは空白(20)16埋め

指定なしの場合は初期状態に戻ります。初期状態ではファイル名,または環境設定ユティリティで指定したデフォルトホッパが使用されます。変更する場合は,133バイト目のホッパ情報で指定したホッパが使用されます。

132

1

スタッカの変更種別

JIS8

'I':初期状態に戻す

'Y':変更する

指定なしは空白(20)16埋め

指定なしの場合は初期状態に戻ります。初期状態ではファイル名,または環境設定ユティリティで指定したデフォルトスタッカが使用されます。変更する場合は,141バイト目のスタッカ情報で指定したスタッカが使用されます。

133

8

ホッパ情報

JIS8

'ABCD0000'で指定

A:ホッパ1

B:ホッパ2

C:ホッパ3

D:ホッパ4

<A〜Dに入れる値>

'0':指定なし

'1':指定あり

複数指定できます

131バイト目の「ホッパの変更種別」で「変更する」を指定した場合に有効となります。メインフレームではバイナリ情報のため,業務プログラム移行時には領域を拡張し,テキスト形式に変更する必要があります。

141

8

スタッカ情報

JIS8

'ABCDE000'で指定

A:サンプルトレイ

B:スタッカ1

C:スタッカ2

D:スタッカ3

E:スタッカ4

<A〜Eに入れる値>

'0':指定なし

'1':指定あり

複数指定できます

132バイト目の「スタッカの変更種別」で「変更する」を指定した場合に有効となります。メインフレームではバイナリ情報のため,業務プログラム移行時には領域を拡張し,テキスト形式に変更する必要があります。

(凡例)

数字:'0'〜'9'。

英字:'A'〜'Z'(小文字は大文字として扱います)。

英数字:英字または数字。

−:該当なし。

 制御イメージのプリフィクスは環境設定に従います。

注※

変換種別がGDI,PostScriptまたはPDFの場合は,環境設定ユティリティの[印刷ジョブ設定]タブ−[詳細設定]画面−[SETPRTテキストレコードで書式オーバレイイメージ・ページ複写省略時の動作]の[ファイル名・ジョブ定義XMLファイル・環境設定ユティリティに従う]の指定によって動作が変わります。変換種別がESC/Pの場合は,環境設定ユティリティの[印刷ジョブ設定]タブ−[詳細設定]画面−[SETPRTテキストレコードでページ複写省略時の動作]の[ファイル名・ジョブ定義XMLファイル・環境設定ユティリティに従う]の指定によって動作が変わります。

・チェックなしの場合

書式オーバレイイメージ名は,環境設定ユティリティで指定したイメージ名を使用します。書式オーバレイイメージ適用枚数は255です。ページ複写枚数は1です。PDE for Open 01-06以前と同等の出力結果になります。

・チェックありの場合

書式オーバレイイメージ名は,ファイル名またはジョブ定義XMLファイル,もしくは環境設定ユティリティで指定したイメージ名を使用します。書式オーバレイイメージ適用枚数は,ファイル名またはジョブ定義XMLファイルに指定された適用枚数を使用します(指定がない場合は255です)。ページ複写枚数は,ファイル名またはジョブ定義XMLファイル,もしくは環境設定ユティリティで指定したページ複写枚数(ページ複写回数)を使用します。

設定例

SETPRTテキストレコードの設定例を次に示します。

[図データ]

(c) 画像データレコード

画像データ用のレコードです。オープン環境の画像ファイルを帳票に出力したい場合に画像データレコードで指定します。なお,画像データレコードでは改行制御を行いません(同時に指定されたプリンタ制御文字は無効となります)。PDE for Openで扱える画像データファイルについて次に示します。

表2‒8 PDE for Openで扱える画像データファイル

項目

PDE for Openで扱える画像データファイル

画像データファイルの種類

TIFF※1,ビットマップ

画像データファイルの色形式

モノクロ,グレースケール,パレットカラー,フルカラー

画像データファイルの幅・高さ

16,383ドットまで※2

注※1

マルチページ形式のTIFFには対応していません。

注※2

大きな画像データファイルを指定すると,PDL変換時間・PDLデータサイズが増大します。また,プリンタ出力時にプリンタでエラーが発生する場合があります。

画像データレコードの形式について次に示します。

表2‒9 画像データレコードの形式

位置

(10進)

長さ

内容

形式

備考

0

1

データ種別

JIS8

'%'(25)16

画像データレコード識別子

1

7

データ識別子

JIS8

'*HITAC*'固定

8

1

JIS8

'1'(31)16

9

8

予備

JIS8

空白(20)16埋め

17

5

x座標

JIS8

FCBで定義される印刷領域の左端からの距離

10進で00000〜32767(1/1,440インチ単位)

22

1

予備

JIS8

空白(20)16埋め

23

5

y座標

JIS8

FCBで定義される印刷領域の上端からの距離

10進で00000〜32767(1/1,440インチ単位)

28

1

予備

JIS8

空白(20)16埋め

29

5

※1

JIS8

出力時の大きさ

10進で00000〜32767(1/1,440インチ単位)

00000の場合は高さに比例した幅となります※2

34

1

予備

JIS8

空白(20)16埋め

35

5

高さ※1

JIS8

出力時の大きさ

10進で00000〜32767(1/1,440インチ単位)

00000の場合は幅に比例した高さとなります※2

40

3

ファイル形式

JIS8

'BMP':ビットマップ形式

'TIF':TIFF形式

43

13

予備

JIS8

空白(20)16埋め

56

1

前景色パレット番号

JIS8

環境設定ユティリティの[色設定]タブの[カラーパレット]に対応する値

10進で1〜8

指定なしは空白(20)16埋め

モノクロ画像だけ有効

  • 指定なしの場合:パレット8

57

1

前景・背景反転

JIS8

'Y':前景・背景反転する

'N':前景・背景反転しない

指定なしは空白(20)16埋め

モノクロ画像だけ有効

  • 指定なしの場合:前景・背景反転なし

58

1

背景透過

JIS8

'Y':背景を透過する

'N':背景を透過しない(背景色は白)

指定なしは空白(20)16埋め

モノクロ画像だけ有効

  • 指定なしの場合:背景透過なし

59

1

予備

JIS8

空白(20)16埋め

60

1〜255※3

ファイル名

SJIS

画像データファイル名(ファイル名.拡張子)

フォルダは環境設定ユティリティの[印刷データ設定]タブの[画像データフォルダ]で指定

UTF-8※4

(凡例)

−:該当なし。

注※1

画像データファイル自体が持つドット数や解像度の情報とは関係なく,任意の値を指定できます。

注※2

幅と高さ両方に00000を指定した場合はエラーとなります。片方だけ00000で指定した場合も,比例計算結果が32,767を超える場合はエラーとなります。

注※3

シフトJISでのバイト数です。「画像データフォルダ」と合わせたファイルパスが,シフトJISで259バイトを超える場合はエラーとなります。

注※4

シフトJIS範囲外の文字は指定できません。指定した場合はエラーとなります。

設定例

左から10インチ,上から1インチの位置に,0.5インチ四方でビットマップ画像を出力する場合の画像データレコードの設定例を次に示します。

[図データ]

描画方法

画像データは指定された順に描画します。なお,書式オーバレイは常に最背面となります。画像データの描画順を次に示す設定例で説明します。

  • 設定例

    [図データ]

モノクロ画像については,レコードで前景色のパレット番号,前景・背景の反転有無,背景の透過有無を指定できます。モノクロ画像で指定できる表示について次に示します。

  • 描画例

    [図データ]

モノクロ画像以外(グレースケール画像,パレットカラー画像,フルカラー画像など)に対しては,前景色パレット番号,前景・背景反転,背景透過の指定は無効となります。グレースケール画像に対して色付けはできません。

なお,画像データファイルの形式によって,モノクロ画像またはモノクロ画像以外の判定がされます。画像データファイル中で実際に使われている色が白と黒だけの場合でも,画像データファイルの形式がモノクロでなければモノクロ画像としては扱われません。前景色パレット番号,前景・背景の反転,および背景の透過の指定は無効になります。

変換種別による差異

変換種別がGDIの場合とPostScriptおよびPDFの場合とでは,モノクロ画像の背景透過ありで前景色が黒以外の出力結果に差異が生じます。この差異は,書式オーバレイ中のドットパターンで生じるものと同じです。ただし,出力結果はプリンタドライバによって異なる場合があります。

変換種別がGDIの場合

モノクロ画像の前景ピクセルは,描画先の元のピクセルの色と前景色の論理積演算の結果になります。モノクロ画像の背景ピクセルは,描画先の元のピクセルの色が保存されます。変換種別がGDIの場合の描画例について次に示します。

  • 描画例

    [図データ]

変換種別がPostScriptおよびPDFの場合

モノクロ画像の前景ピクセルは,前景色となります。モノクロ画像の背景ピクセルは,描画先の元のピクセルの色が保存されます。変換種別がPostScriptおよびPDFの場合の描画例について次に示します。

  • 描画例

    [図データ]

異常時の動作

画像データレコード処理中に異常が発生した場合,ログメッセージを出力し変換を中止します。ただし,画像データの後処理に失敗した場合は警告ログを出力し変換を続行します。ログメッセージの詳細については,「14.2 メッセージとエラーログ」を参照してください。

(d) 任意座標指定文字レコード

任意座標指定文字用のレコードです。任意の座標に文字を出力したい場合に任意座標指定文字レコードで指定します。任意座標指定文字レコードには,文字列レコードと同様に,文字コードのほかに機能キャラクタも使用できます。機能キャラクタについては,「6.1.8 機能キャラクタの扱い(ファイル形式1またはファイル形式2の場合)」を参照してください。

なお,任意座標指定文字レコードでは改行制御を行いません(同時に指定されたプリンタ制御文字は無効となります)。また,任意座標指定文字レコードではデフォルト機能キャラクタは無効になります。

任意座標指定文字レコードの形式を次に示します。

表2‒10 任意座標指定文字レコードの形式

位置(10進)

長さ

内容

形式

備考

0

1

データ種別

JIS8

'%'(25)16

任意座標指定文字レコード識別子

1

7

データ識別子

JIS8

'*HITAC*'固定

8

1

JIS8

'0'(30)16

9

51

予備

JIS8

空白(20)16埋め

60

0以上

任意座標指定文字

出力する文字列(SJISまたはUTF-8)および機能キャラクタ

指定可能な機能キャラクタは,「6.1.8 機能キャラクタの扱い(ファイル形式1またはファイル形式2の場合)」を参照してください。

(凡例)

−:該当なし。

出力座標の指定方法

出力座標は,座標指定キャラクタを使用してFCBで定義される印刷領域の左上端からの距離をドット単位(240dpi換算値)で指定します。座標指定機能キャラクタの詳細は,「付録I.12 座標指定(1A7D80xxxxxxxx)16」を参照してください。なお,座標指定機能キャラクタで座標指定が行われない場合,FCBで定義される印刷領域の左上端に文字列が出力されます。

設定例

左から10インチ,上から1インチの位置に文字列を出力する場合の任意座標指定文字レコードの設定例を次に示します。

[図データ]