DOBON.NET DOBON.NETプログラミング掲示板過去ログ

テキストをバイナリデータにするには

環境/言語:[OS : Windows 2000 Professional / 言語 : Visual Basic 6.0]
分類:[VB6以前]

【解決したい問題】

はじめて質問をさせて頂きます。

Win2000、VB6でラベル打ち出しのプログラムを作っているのですが、
ラベルプリンタが日本語は内蔵フォントを使用してでしか印刷できず外字登録した
文字が印刷できません。

そこで一度テキストを画像にしてそれを印刷することになったのですが
プリンタのコマンド集を読むと「グラフィックフォーマットされていない生バイナ
リデータ。データはバイトデータである必要があります。」と書かれていました。

いったいどの様にすればいいのか見当もつかず困っています。
どなたかご教示いただけないでしょうか。
よろしくお願いいたします。

【解決するために何をしたか】

Picture1.CurrentX = 100
Picture1.CurrentY = 100
Picture1.Print "テスト"
Set Picture1.Picture = Picture1.Image
Printer.PaintPicture Picture1, 0, 0
Printer.EndDoc

これで打てるのですが、プリンタのコマンド形式で送らないとフィードや
任意の枚数での自動カットができません。
> プリンタのコマンド集を読むと「グラフィックフォーマットされていない生バイナ
> リデータ。データはバイトデータである必要があります。」と書かれていました。
>
> いったいどの様にすればいいのか見当もつかず困っています。

必要な大きさの Image を new して Graphics に割り当てて、Graphics.DrawString() すればよいです。

> これで打てるのですが、プリンタのコマンド形式で送らないとフィードや
> 任意の枚数での自動カットができません。

そういうのは自分で制御するしかありませんし、どう制御するかはプリンタの機種によって異なります。
渋木 様、ありがとうございます。

>必要な大きさの Image を new して Graphics に割り当てて、Graphics.DrawString() すればよいです。

検索をしてGraphics.DrawString()を調べてみたのですが、VB.NETの記事ばかりが出てきてしまいます。
VBのPrintメソッドがVB.NETではGraphics.DrawString()になっているということでした。

大変恐縮なのですが、できましたらもう少しお力をお借りできないでしょうか。
よろしくお願い致します。
基本的に、画面描画と印刷描画は座標や大きさの違いぐらいで制御コマンドは似ています。
恐らく、VB関係の情報では、見つける事が困難かもしれません。
したがって、VC関係の情報で探してみてはいかがでしょうか?

ところで、印刷処理を直接制御する事が難しいと思うのであれば、印刷ツールを使って画像を印刷する...といった手もあります。
ご参考までに...
ぺがらぼ様

アドバイスを頂きありがとうございます。
VCの情報を探してみます。

>印刷ツールを使って画像を印刷する...といった手もあります。
できる限りをやってみてどうしても難しい場合はこちらも検討いたします。

返信が遅くなりまして、すみませんでした。

DOBON.NET | プログラミング道 | プログラミング掲示板