|
-
-
画像を印字したい場合は、OPOS.POSPrinterオブジェクトの PrintBitmap, SetBitmap メソッドなどを実行します。
また、プリンター本体のNVRAM(不揮発性メモリー)に画像データを登録しておくと、高速に印字できます。
本FAQはOPOSアプリケーションの開発者向けです。OPOSメソッドのコーディングについて紹介しています。
- PrintBitmapメソッドにてビットマップ画像を印刷
- SetBitmapメソッドにてビットマップ画像を登録後、PrintNormalメソッドで印刷
- NVRAM(不揮発性メモリー)に画像データを登録後、DirectIOメソッドで印刷
「RecLetterQuality」プロパティーは、印字品質を設定します。
- RecLetterQuality = TRUE (レシートを高品質モードで印刷)
- RecLetterQuality = FALSE (レシートを高速モードで印刷)
高品質モードでは高密度のグラフィックで画像が印刷され、高速モードでは低密度のグラフィックで印刷されます。
TM-T88IVやTM-T70などでは「RecLetterQuality = TRUE」で画像印刷を行うと原寸大の大きさで印刷しますが、「RecLetterQuality = FALSE」で画像の印刷を行うと低密度のため縦横2倍のサイズで印刷されます。
「RecLetterQuality」プロパティーの初期値は FALSE となっている為、明示的に TRUE を指定する必要があります。
PrintBitmap メソッドは、印刷の度に画像ファイルを指定するので、毎回異なった画像を印刷したい場合に便利です。
ただし「ディスク上の画像データの呼び出し」および「TMプリンターが扱えるデータに変換」する作業を毎回行うために、その他の画像印刷方法に比べ印刷速度が低速です。
Visual Basic 6.0
'レシート部に画像ファイル(BitmapFilename)を幅(Width)に縮小/拡大し、
'PTR_BM_CENTER(中央)に配置して、印刷します
With OPOSPOSPrinter1
.PrintBitmap PTR_S_RECEIPT, BitmapFilename, Width, PTR_BM_CENTER
End With
|
SetBitmap メソッドを利用することで、時間の掛かる「ディスク上の画像データの呼び出し」や 「TMプリンターが扱えるデータに変換」する作業をあらかじめ済ませることができます。
「TMプリンターが扱えるデータに変換された印刷データ」は、TMプリンター本体のメモリー上に登録されます。
(登録には多少時間が掛かります。/登録できる画像数は2つまでです。)
PrintNormal メソッドでエスケープシーケンス文字(ESC|1B)を印字するよう命令すると、TMプリンター本体に登録された画像を印字することができます。
TMプリンター本体のメモリーから画像データを呼び出しているために、高速な印字が可能です。
ただし、Close メソッドの実行やプリンターの電源をOFFにすることにより、メモリーに登録された画像データは削除されてしまいます。
次の Open メソッド実行時などに改めて画像データの登録を行う必要があります。
Visual Basic 6.0
' 予め画像データをTMプリンターのメモリー(RAM)上に登録しておきます
With OPOSPOSPrinter1
'レシート部に画像ファイル(BitmapFilename)を幅(Width)に縮小/拡大し、
'PTR_BM_CENTER(中央)に配置して、メモリー(RAM)上に登録しておきます
.SetBitmap 1, PTR_S_RECEIPT, BitmapFilename, Width, PTR_BM_CENTER
End With
' 実際に画像を印字するコード
ESC = Chr(&h1B)
With OPOSPOSPrinter1
'メモリー(RAM)上に登録された画像を印刷します。
.PrintNormal PTR_S_RECEIPT, ESC + "|1B"
End With
|
NVRAM(不揮発性メモリー)搭載のTMプリンターは、このNVRAM上に画像データを登録することができます。
NVRAMに画像データを登録するにはロゴ登録ユーティリティーを使用します。
DirectIO メソッドで登録された画像番号を印刷する命令をすると、TMプリンター本体に登録された画像を印字することができます。
TMプリンター本体のNVRAMから画像データを呼び出しているために、高速な印字が可能です。
NVRAMに登録された画像データは、SetBitmap メソッドで登録された画像データとは異なり、Close メソッドの実行やプリンターの電源をOFFにしても登録された画像データは削除されません。
一度登録することで、次回使用時に改めて画像データを登録する必要がありません。
TMプリンター本体に画像登録する場合、SetupPOS ユーティリティの「デバイス固有の設定」からロゴ登録ユーティリティーを起動することができます。
ロゴ登録ユーティリティーに関する詳細につきましては、「TMFLogoユーティリティ」のヘルプ、および EPSON OPOS ADK マニュアル「ユーザーズマニュアル TM Flash ロゴユーティリティ」を参照してください。
Visual Basic 6.0(登録にキーコードを使用していない場合)
Num = 1 '(登録したビットマップ番号)
Data = CStr(PTR_BM_CENTER) '(印字位置の指定 例_中央寄せ)
With OPOSPOSPrinter1
rtn = .DirectIO(PTR_DI_PRINT_FLASH_BITMAP, Num, Data)
End With
|
Visual Basic 6.0(登録にキーコードを使用している場合)
'(31~16bitにキーコードの1バイト目を、15~0bitにキーコードの2バイト目を格納した数値)
Num = 2097184
Data = CStr(PTR_BM_CENTER) '(印字位置の指定 例_中央寄せ)
With OPOSPOSPrinter1
rtn = .DirectIO(PTR_DI_PRINT_FLASH_BITMAP2, Num, Data)
End With
|
カスタマーディスプレイ |
DM-D500 |
モバイルプリンター |
TM-P20,TM-P60II,TM-P80 |
PC一体型プリンター |
TM-T70II-DT,TM-T88V-DT |
TMシリーズ |
TM-H5000II,TM-H6000II,TM-H6000III,TM-H6000IV,TM-J2000,TM-J2100,TM-L60II,TM-L90 オートカッターモデル,TM-L90 ピーラーモデル,TM-m10,TM-m30,TM-T20,TM-T20II,TM-T70,TM-T70II,TM-T88III,TM-T88IIIX (ARCX搭載),TM-T88IV,TM-T88V,TM-T90,TM-T90 KP,TM-T90II,TM-U220A,TM-U220B,TM-U220D,TM-U295,TM-U590,TM-U675,TM-U950 |
|