我正在尝试使用PrintDocument
.
我正在重新调整图像的大小,以便在打印时将其缩放为打印输出的整页,图像被略微裁剪。
编辑 2
我正在使用边距来计算要使用的区域:
With printSettings.DefaultPageSettings
Dim areaWidth As Single = .Bounds.Width - .Margins.Left - .Margins.Right
Dim areaHeight As Single = .Bounds.Height - .Margins.Top - .Margins.Bottom
End With
页面边界为 1169x827 (A4),边距为 1137x795。
调整大小后,我的图像大小为 1092x682,我使用以下代码绘制它:
e.Graphics.DrawImage(printBitmap, .Margins.Left, .Margins.Top)
令人讨厌的是,当我打印到 PrintPreviewDialog 时,它会完美缩放,但是当我将完全相同的代码打印到实际打印机时,它不适合。
编辑 3
完整代码可以在这个 url 找到
Dim clsPrint As New clsPrinting
With clsPrint
.Landscape = True
.SetMinimumMargins()
If .ShowPrintDialog Then
.Documentname = "Some doc name"
.Preview = False 'When True shows ok
.PrintImage("filename of a png file")
End If
End With