[ESX]シーケンス(1/2)

ESX シーケンスの拡張制御命令は、32種類あります。

プリンターのリセット処理([ESX] 01h 00h 00h)

バッファーのデータを印字し、プリンターを初期状態にします。初期状態
JIS
ESX 01h 00h 00h
16進数
1Bh 7Eh 01h 00h 00h
I75モードの制御命令で設定されたすべての印字パラメータを初期化します。
同時にメニューで設定した項目の一部を初期化します。

文字ピッチの設定([ESX] 02h 00h 01h)

文字ピッチを設定します。
JIS
ESX 02h 00h 01h[文字ピッチ(1バイト)]
16進数
1Bh 7Eh 02h 00h 01h[文字ピッチ(1バイト)]
[文字ピッチ(1バイト)]
文字ピッチを設定します。
文字ピッチ
32h(50)
10 cpi
3Ch(60)
12 cpi
43h(67)
13.4cpi
4Bh(75)
15 cpi
上記以外の値を設定した場合、本制御命令は無視されます。

改行ピッチの設定(lpi単位)([ESX] 03h 00h 01h)

改行ピッチを設定します。
JIS
ESX 03h 00h 01h[改行ピッチ(1バイト)]
16進数
1Bh 7Eh 03h 00h 01h[改行ピッチ(1バイト)]
[改行ピッチ(1バイト)]
改行ピッチを設定します。
文字ピッチ
14h(20)
2 lpi
1Eh(30)
3 lpi
28h(40)
4 lpi
32h(50)
5 lpi
3Ch(60)
6 lpi
4Bh(75)
7.5 lpi
50h(80)
8 lpi
上記以外の値を設定した場合、本制御命令は無視されます。
同一行内で複数の改行ピッチ設定を行った場合、現在行の改行ピッチは垂直方向の移動が行われた後に印字データが送られた時点で決まります。次の場合では改行ピッチは決まりません。
アンダーラインのないスペース(空白)
水平タブ位置移動
水平相対/絶対位置への移動
バッファー内に印字データがない場合は、本制御命令を受信した時点で改行ピッチが有効になりますが、垂直方向の移動をともなわない印字開始命令によってバッファー内のデータを印字しても改行ピッチは有効にならず、垂直方向の移動命令が実行された時点で、次行から有効になります。
設定した値がエラーの場合、本制御命令は無視されます。

ページ長の設定([ESX] 04h)

現在行をTOF行として、ページ長を設定します。
JIS
ESX 04h[設定単位(3バイト)]<ページ長(1バイトまたは2バイト)>
16進数
1Bh 7Eh 04h[設定単位(3バイト)]<ページ長(1バイトまたは2バイト)>
[設定単位(3バイト)]<ページ長(1バイトまたは2バイト)>
はじめの3バイトでページ長を設定する単位を指定し、続く1バイトまたは2バイトでページ長を設定します。
設定単位
文字ピッチ
行単位(改行ピッチ6 lpi単位)
00h 03h 00h
00h 01h ~ 01h FFh(1~511行)
行単位(現在の改行ピッチ単位)
00h 02h 01h
00h ~ FFh(0~255行)
インチ単位
00h 02h 02h
00h ~ FFh(0~255インチ)
ただし、現在の改行ピッチ単位およびインチ単位の場合は、24インチを越える指定を行っても24インチになります。
連続用紙に対応したページフォーマット時(Fmode 3、4、6およびFmode 7、8のワイド領域モード)に本制御命令が実行されると、現在行をTOF行としてページ長が設定されます。
カット紙に対応したページフォーマット時(Fmode 1、2およびFmode 7、8の標準領域モード)は、TOF行の設定が無効となります。
設定した値がエラーの場合、本制御命令は無視されます。

ANK文字フォントの指定([ESX] 06h 00h 01h)

1バイトコード文字(ANK文字)のフォントを指定します。
JIS
ESX 06h 00h 01h[ANKフォント(1バイト)]
16進数
1Bh 7Eh 06h 00h 01h[ANKフォント(1バイト)]
[ANKフォント(1バイト)]
ANK文字フォントを指定します。
ANKフォント
00h
省略(明朝体12cpi)
01h
DPゴシック
06h
エリート
07h
クーリエ
08h
明朝体12cpi
09h
明朝体10cpi
フォントの指定は、文字ピッチには影響しません。

全文字コードの印字([ESX] 08h)

指定したバイト数のデータを現在の文字セットのフォントで印字します。
JIS
ESX 08h<バイト数(2バイト)>(文字データ)
16進数
1Bh 7Eh 08h <バイト数(2バイト)> (文字データ)
<バイト数(2バイト)>
印字する文字データのバイト数を指定します。
単位:
バイト数
範囲:
00h 01h~FFh FFh(1~65535)
(文字データ)
印字する文字データを指定します。
IBM5577(日本語モード)では文字数の範囲が00h 01h~80h 01hですが、本エミュレーションモードでは00h 01h~FFh FFhとなります。
指定したバイト数がエラーの場合、本制御命令および指定バイト数分のデータは無視されます。

給紙(改ページ)([ESX] 0Eh 00h 01h 05h)

バッファーのデータを印字し、現在印字位置を次ページの1行目の左マージン位置に移動します。
JIS
ESX 0Eh 00h 01h 05h
16進数
1Bh 7Eh 0Eh 00h 01h 05h
本制御命令は、カット紙に対応したページフォーマット時(Fmode 1、2およびFmode7、8の標準領域モード)のみ有効です。
排紙吸入後にページフォーマットにしたがったTOF行に移動します。本制御命令は、給紙(改ページ)([ESC] S)と同じです。

排紙(改ページ)([ESX] 0Eh 00h 01h 06h)

バッファーのデータを印字し、現在印字位置を次ページの1行目の左マージン位置に移動します。
JIS
ESX 0Eh 00h 01h 06h
16進数
1Bh 7Eh 0Eh 00h 01h 06h
カット紙に対応したページフォーマット時(Fmode 1、2およびFmode 7、8の標準領域モード)は、排紙吸入後にページフォーマットにしたがったTOF行に移動します。
連続用紙に対応したページフォーマット時(Fmode 3、4、6およびFmode 7、8のワイド領域モード)は、現在のページ長にしたがって次のTOF行に移動します。移動した位置が物理的に用紙の下端を越えた場合は用紙を排出します。
本制御命令は、排紙(改ページ)([ESC] V)と同じです。

ANK文字の横幅縮小指定([ESX] 0Eh 00h 01h 07h)

以降の1バイトコード文字(ANK文字)は、文字フォントや文字ピッチに関係なく横幅が18cpiに縮小されます。
JIS
ESX 0Eh 00h 01h 07h
16進数
1Bh 7Eh 0Eh 00h 01h 07h
2バイトコード文字(漢字)には影響しません。

ANK文字の横幅縮小解除([ESX] 0Eh 00h 01h 08h)

1バイトコード文字(ANK文字)の横幅縮小指定を解除し、最後に設定されたANK文字のフォントおよび文字ピッチの状態に戻します。
JIS
ESX 0Eh 00h 01h 08h
16進数
1Bh 7Eh 0Eh 00h 01h 08h

文字の横幅拡大指定([ESX] 0Eh 00h 01h 09h)

文字およびスペース、後退の横幅を2倍に拡大して印字します。
JIS
ESX 0Eh 00h 01h 09h
16進数
1Bh 7Eh 0Eh 00h 01h 09h
イメージデータおよび水平方向移動には影響しません。
すでに文字の拡大/縮小指定([ESX] 01h 00h 03h E)で文字が横2倍×縦1倍に拡大されている場合、本制御命令は無視されます。
本制御命令は、文字の横幅拡大指定([ESC] [)と同じです。

文字の横幅拡大解除([ESX] 0Eh 00h 01h 0Ah)

文字およびスペース、後退の横幅の拡大指定を解除します。
JIS
ESX 0Eh 00h 01h 0Ah
16進数
1Bh 7Eh 0Eh 00h 01h 0Ah
本制御命令が実行されると、文字の大きさが横1倍×縦1倍になります。
すでに文字の拡大/縮小指定([ESX] 01h 00h 03h E)で文字が横1倍×縦1倍に指定されている場合、本制御命令は無視されます。
本制御命令は、文字の横幅拡大解除([ESC] ])と同じです。

縦書きモードの指定([ESX] 0Eh 00h 01h 0Bh)

以後の文字を縦書きで印字します。
JIS
ESX 0Eh 00h 01h 0Bh
16進数
1Bh 7Eh 0Eh 00h 01h 0Bh
イメージデータには影響しません。
すでに縦書きモードが設定されている場合、本制御命令は無視されます。

横書きモードの指定([ESX] 0Eh 00h 01h 0Ch)

以後の文字を横書きで印字します。
JIS
ESX 0Eh 00h 01h 0Ch
16進数
1Bh 7Eh 0Eh 00h 01h 0Ch
2バイト(漢字)コード表に定義されていないコードを受信すると、漢字文字幅分のスペースとして処理します。

上付き文字の指定([ESX] 0Eh 00h 01h 0Dh)

以降のANK文字を上付き文字で印字します。
JIS
ESX 0Eh 00h 01h 0Dh
16進数
1Bh 7Eh 0Eh 00h 01h 0Dh
上付きを指定すると、ANK文字の縦方向を1/2の大きさに縮小して、標準の大きさの文字の上半分に印字します。
上付き文字は、ANK文字フォントの指定([ESX] 06h 00h 01h)によって選択されているフォントで印字されます。
2バイトコード文字(漢字)やイメージデータには、影響しません。すでに上付きモードが設定されている場合、本制御命令は無視されます。
00h~1Fhに割り当てられた文字に対しては、上付き指定は無効になります。

下付き文字の指定([ESX] 0Eh 00h 01h 0Eh)

以降のANK文字を下付き文字で印字します。
JIS
ESX 0Eh 00h 01h 0Eh
16進数
1Bh 7Eh 0Eh 00h 01h 0Eh
下付きを指定すると、ANK文字の縦方向を1/2の大きさに縮小して、標準の大きさの文字の下半分に印字します。
下付き文字は、ANK文字フォントの指定([ESX] 06h 00h 01h)によって選択されているフォントで印字されます。
2バイトコード文字(漢字)やイメージデータには、影響しません。すでに下付きモードが設定されている場合、本制御命令は無視されます。
00h~1Fhに割り当てられた文字に対しては、下付き指定は無効になります。
842H-135