任意文字列の直接印刷の方法は?

解決


町や空に  2008-12-19 15:46:52  No: 141113

任意の文字や図形を紙に直接印刷する場合,VB5ではPrinterオブジェクトが使えました。プロパティとして,FontName, FontSize, CurrentX,Yなどがあり,あらゆる要素を自由に指定して印字が可能でした。印字のコマンドは
Printer.Print "任意の文字列"
で,極めて簡単明快でした。
  VB2005に切り替えてから,同様の機能を探しましたが,まだ見つけられずにおります。
  PictureBoxに文字や図形を出力してから,PictureBoxまるごと印刷するしかないのでしょうか。御教示下さい。


花ちゃん  2008-12-19 18:02:27  No: 141114

下記のサイトの印刷関係が参考なるかと。
http://hanatyan.sakura.ne.jp/dotnet/index.html

印刷位置をmm単位で指定しての簡単なテキストの印刷
http://hanatyan.sakura.ne.jp/dotnet/Prt03.htm


町や空に  2008-12-19 19:40:18  No: 141115

花ちゃんさん,ありがとうございました。
  御紹介頂いたページを拝見しました。小生の目的に叶うかどうか,これからテストして見ます。


町や空に  2008-12-23 06:09:34  No: 141116

いろいろ試行しましたが,下記の方法でうまくいきました。
図形も,線,円,四角等を自由に描けました。

Private Sub Button1_Click(ByVal sender As System.Object, _
                          ByVal e As System.EventArgs) Handles Button1.Click
    PrintDocument1.Print()
End Sub

Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System. _
            Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage

    Dim g As Graphics = e.Graphics  
    g.PageUnit = GraphicsUnit.Millimeter'mm単位指定
    g.DrawString("任意の文字列",New Font("フォント名", フォントサイズ), Brushes.Black, x位置, y位置)

End Sub
もちろんフォント名やペン名を別に定義して代入する方法もOKです。
花ちゃんさんありがとうございました。改めてお礼申し上げます。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加