|
Step 0.2 Step 0.1 は点の表示密度で、キャラクター (水平 = 1 単位あたり240
twip、
垂直 = 1 単位あたり 120 twip)単位での表示なので
(カラー印刷の場合は文字の印字を後にして下さい。)
Option Explicit 'SampleNo=004 WindowsXP VB6.0(SP5) 2002.04.17
Private Sub sAmikakePrint(Mystr As
String, X As Single, Y As Single)
'--- VB5.0 で文字の背景が透明にならない場合 --------
'VB6.0
では必要ありません、又、逆に文字を印刷してから網掛けを
'印刷するならできますが、カラーの場合や塗潰しの場合は不可です。
'下記の5行を各ページの先頭に記入して下さい。
'詳しくは、下記、VB5.0
における印刷関連の制限事項および注意点 を参照
'http://support.microsoft.com/default.aspx?scid=kb;ja;JP411269
Printer.FontTransparent = False
Printer.Print "
"
Printer.CurrentX = 0
Printer.CurrentY = 0
Printer.FontTransparent = True
'---------------------------------------------------
Dim Icount As
Single
Dim Jcount As
Single
Dim sngHeight As
Single
Dim sngWidth As
Single
Printer.ScaleMode =
vbCharacters 'キャラクター単位で統一
Printer.DrawWidth = 2 '点の大きさ設定1にすると薄い色
sngWidth =
Printer.TextWidth(Mystr) '文字列の幅を取得
sngHeight =
Printer.TextHeight(Mystr) '文字列の高さを取得
For
Icount = X To X + sngWidth Step 0.2
For
Jcount = Y To Y + sngHeight Step 0.1
Printer.PSet (Icount,
Jcount),
QBColor(0) 'ドットを印刷
Next Jcount
Next
Icount
Printer.CurrentX = X '座標の設定
Printer.CurrentY =
Y
Printer.Print Mystr '設定文字列を印字
Printer.EndDoc
End
Sub
Private Sub Command1_Click()
Printer.FontSize = 36
'10桁目の3行目に印刷
Call sAmikakePrint("VBレスキュー(花ちゃん)", 10, 3)
Printer.EndDoc
End
Sub
|
|
印刷密度と表示密度は違うので解像度に合せて修正して下さい。
Private Sub sAmikakeShow(Mystr As
String, X As Single, Y As Single)
Dim Icount As
Single
Dim Jcount As
Single
Dim sngHeight As
Single
Dim sngWidth As
Single
Form1.ScaleMode =
vbCharacters 'キャラクター単位で統一
Form1.DrawWidth = 1 '点の大きさ設定1にすると薄い色
sngWidth =
Form1.TextWidth(Mystr) '文字列の幅を取得
sngHeight =
Form1.TextHeight(Mystr) '文字列の高さを取得
For
Icount = X To X + sngWidth Step 0.25
For
Jcount = Y To Y + sngHeight Step 0.125
Form1.PSet (Icount,
Jcount),
QBColor(12)
Next Jcount
Next
Icount
'後で文字を表示すると色かぶりしない
Form1.CurrentX = X '座標の設定
Form1.CurrentY =
Y
Form1.Print Mystr '設定文字列を印字
End
Sub
Private Sub Command2_Click()
Form1.BackColor
= QBColor(15)
Form1.FontSize =
20
'4桁目の2行目に表示
Call sAmikakeShow("VBレスキュー(花ちゃん)", 4, 2)
End Sub
結 果
印字の場合はもっと綺麗になります。 |