余白を設定するには?


なお  2004-05-31 09:36:42  No: 83687

printformでA4縦に下記の設定で印刷してOKでしたが、
上部からいきなり印刷でしたので
余白を設定したいのですが、わかりません。
ご存知の方、ご教授よろしくお願いします。
Printer.PaperSize = vbPRPSA4
Printer.Orientation = 1


ぴろあき  2004-05-31 21:14:33  No: 83688

PrintFormでは無理かと。。。
1.画面をキャプチャする
2.キャプチャした画面を印刷する

といった手順で印刷すれば、余白の設定も可能です。

<サンプル>
Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)

Private Sub Command1_Click()
    Dim LeftWhite As Single   '左余白
    Dim TopWhite As Single    '上余白
    
    LeftWhite = 1000
    TopWhite = 2000

    Call keybd_event(&HA4, &H56, &H1, 0)
    Call keybd_event(&H2C, &H79, &H1, 0)
    Call keybd_event(&H2C, &H79, &H3, 0)
    Call keybd_event(&HA4, &H56, &H3, 0)
    
    Printer.PaintPicture Clipboard.GetData(vbCFBitmap), LeftWhite, TopWhite

    Printer.EndDoc
End Sub


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

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






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