制御コード

PDF の制御コード・セクションは、SCS 制御コードを受信したときに、 特定の PC プリンター・コードのうちのどれを PC プリンターに送るべきかを 判別するために PDT 機能によって使用されます。コミュニケーション・マネージャーによって使用されるステートメントの一部を以下の例に示します。
START_JOB=SEL CDW CDL CUL CDS CP8 CS2
END_JOB=CAT CDW CDL CUL CDS CP4 FFF
SET_PAGE_LENGTH=SFL value
SET_VARIABLE_LINE_DENSITY=ESC A value ESC 2
SET_10_CHARACTERS_PER_INCH=P10
注: 上記の行の例は、IBM® 4019 レーザー・プリンターの PDF のものです。

START_JOB および END_JOB

START_JOB に関連した制御コードは、ホスト印刷ジョブの開始ごとに送られます。各ホスト印刷ジョブの始めに、 すべてのプリンター・オプションを既知の状態または 希望する状態に設定しておくことが最適です。PC プリンターは、制御コードによって指示された場合にのみ、 その状態を変更するか、または選択されたオプションを変更します。このため、直前の PC アプリケーションが、例えば Courier フォントを選択して 縦置きモードのままにしていれば、次のジョブでそれらを変更しない限り、 プリンター・オプションとして前の値が使用されることになります。

START_JOB および END_JOB 制御コードが、 IBM4019.PDF と一緒に出荷されたものであっても、多くのユーザーは、 それらを以下のように変更しています。

   START_JOB=RES P12 LL8
   END_JOB=RES

この例では、RES、P12、および LL8 マクロが START_JOB ステートメントで使用されています (これらのマクロは、IBM4019.PDF ファイルの内容で定義されたものです)。これは、印刷ジョブの始めにプリンターに送られたときに、 以下の制御コードに変換されます。

X'1B 5B 4B 07 00 05 31 01 A4 00 00 90 1B 3A 1B 41 09 1B 32'

この制御コードのシーケンスは、以下のことを行います。

END-JOB ステートメントは、 以下の制御コードをジョブの終わりにプリンターに送ります。

X'1B 5B 4B 07 00 05 31 01 A4 00 00 90'

この制御コードは、 プリンターを IBM PPDS 出荷時のデフォルト設定値 (RES) にリセットします。

SET_VARIABLE_LINE_DENSITY

SET_VARIABLE_LINE_DENSITY ステートメントは、1 インチ当たりの行数 (LPI) (6 または 8 のいずれか) を選択するパネルと 組み合わせて使用されます。

PDT のプロセスでは、行/インチのフィールドで選択された値を使用 しますが、これは、SET_VARIABLE_LINE_DENSITY パラメーターの値キーワードの数値を 置き換えます。つまり、行/インチのフィールドが 8 に設定された場合、 SET_VARIABLE_LINE_DENSITY パラメーターは、以下のようになります。

SET_VARIABLE_LINE_DENSITY=ESC A 09 ESC 2

ただし、09 は 72/8 の計算結果です。活版印刷におけるポイント数は、1 インチ (in.) 当たり 42 です。 したがって、12 ポイントは、1 インチ当たり 6 行であることを示します。

行密度を設定するためにプリンターに送られる制御コードは、以下のとおりです。
X'1B 41 09 1B 32'
SET_10_CHARACTERS_PER_INCH

ほとんどのプリンターでは、デフォルト・ピッチは 10 字 / インチです。ほとんどの PDT では、Z and I Emulator for Windows はこれと同じ規則を使用 して、SET_10_CHARACTERS_PER_INCH ステートメント上にある制御コードを送ります。PDF では通常、これは次のようにコーディングされます。

SET_10_CHARACTERS_PER_INCH=P10

ただし P10 は、次のようにマクロ定義セクションでコーディングされます。

P10 EQU 12