便利ツール(ネイティブ印刷) | ||
---|---|---|
ネイティブコードで印刷するDelphiコンポーネント Windows環境での印刷は、レポートツールで行うものと決め込んでいませんか?確かにプレビュー機能もあり、簡単便利ですよね。でも、専用用紙(納品書、請求書、送り状、ラベル)、中途半端なインチ設計の用紙に印刷する時、サイズを合わせる事で困りませんか?「そんな用紙はユーザに使わないようにしてもらえば」と他人事を言われると、システム開発担当者は困りますよね!基幹業務ではそんな用紙がゴロゴロあります。 そこで、直接プリンタを制御するコンポーネントを作成しました。代表的なプリンタエミュレーションの制御コードを共通化し、多少なりの手間を省けますが、足りない制御コードは、勝手に付け加えて下さい。 (注)プリンタの制御コード、及び、Delphi言語の知識が必要です。 ■基本仕様 従来のキャラクタベースの印刷を実現します。 インチ系連続帳票の印刷に使用して下さい。 対応エミュレーションは、今のところ4種類です。 (PR201系、ESC/P系、FMPR系、その他) ■機能 Execute 簡易印刷の実行 Pstart 制御コードセット、VFU、漢字ON、標準ピッチ Pend 標準ピッチ、漢字OFF Pout 制御コード印字 Ptext 文字列印字 Pcrlf 改行 Pcr 復帰 Pff 改ページ Pnorm 標準ピッチ Pcomp 圧縮ピッチ Pbig4 4倍角設定 Pbig 横倍角設定 PbigT 縦倍角設定 PbigOFF 倍角解除 Punder 下線設定 PunderOFF 下線解除 Pcl2 1/2改行ピッチ設定 Pcl10 1/10改行ピッチ設定 PclOFF 改行ピッチ解除 ■プロパティ Active: Boolean 簡易印刷を実行します。 DocPageFeed: Boolean 簡易印刷の改ページを設定します。 DocPrnMpde: TNatPrnType 簡易印刷の文字ピッチを設定します。 NORM : 標準 COMP : 圧縮 DocTitle: String 簡易印刷のタイトルを設定します。。 APIを呼ぶ時のタイトルになります。 Name: String コンポーネントの名前を設定します。 PageLines: Integer 改ページ行数を設定します。(1行=1/6インチです) PrnType: TNatPrnType プリンターのエミュレートモードを設定します。 PR201 : PR201系 ESCP : ESC/P系 FMPR : FMPR系 NOPR : エミュレートなし(Printer.Canvasに出力) ■実装方法 procedure TForm1.PGPrintBtnClick(Sender: TObject); var LPT: TNatPrnAPI; begin LPT := TNatPrnAPI.Create; try LPT.Title := 'プログラム印刷'; LPT.Open; try NativPRN.Pstart(LPT); NativPRN.Ptext(LPT, 'ああアイウエオカキクケコンバビブベボパポプあ漢字'); NativPRN.Pcrlf(LPT); NativPRN.Pcl2(LPT); // 1/2行設定 NativPRN.Pcrlf(LPT); NativPRN.PclOFF(LPT); // 1/2行解除 NativPRN.Pcomp(LPT); // 圧縮ピッチ NativPRN.Ptext(LPT, 'ああアイウエオカキクケコンバビブベボパポプあ漢字'); NativPRN.Pcrlf(LPT); NativPRN.PbigT(LPT); // 縦倍角設定 NativPRN.Ptext(LPT, 'ああアイウエオカキクケコンバビブベボパポプあ漢字'); NativPRN.Pcrlf(LPT); NativPRN.Pbig4(LPT); // 4倍角設定 NativPRN.PbigOFF(LPT); // 倍角解除 NativPRN.Pcrlf(LPT); NativPRN.Pend(LPT); finally LPT.Close; end; finally LPT.Free; end; end; |
||
ダウンロード | ||
ダウンロード前に必ずお読みください。 ダウンロードを開始された場合には同意されたものとさせていただきます。
DownLoad |
||
更新履歴 | ||
|
||
お問い合わせ | ||
お問い合わせは、メールでお願いします。 メール |