【发布时间】:2019-03-08 16:01:37
【问题描述】:
我一直在研究这个。我尝试了几种方法来处理这个问题,但由于某种原因,打印机忽略了指定的纸张大小。代码的最后一次迭代似乎应该可以工作,但它不能工作并且打印的纸张尺寸要大得多(700 像素长和 200 像素宽)
Private _pdPrint As PrintDocument
Private _PaperSize As Printing.PaperSize
Public Sub DoPrinting()
Try
' Start the print.
_PaperSize = New PaperSize()
_PaperSize.RawKind = Printing.PaperKind.Custom
_PaperSize.Width = 300
_PaperSize.Height = 200
_PaperSize.PaperName = "Letter"
_pdPrint.DefaultPageSettings.PaperSize = _PaperSize
_pdPrint.PrinterSettings.DefaultPageSettings.PaperSize = _PaperSize
_pdPrint.Print()
If _exceptionFlag = True Then
Throw New Exception
End If
Catch ex As Exception
Throw
End Try
End Sub
【问题讨论】:
-
1.您不想更改 default 大小。您想要更改此特定作业的大小。我不记得选项在哪里,但如果名称中有“默认”,那就不对了。看看周围;你会找到它。它可能是打印事件的事件参数。
-
2.请勿使用名称“字母”,因为这会与库存尺寸相冲突,并可能阻止保存尺寸。
-
3.如果您不在那里做任何其他事情,请不要只在 Catch 中使用
Throw。您可以删除 Try/Catch 语句,将主体留在后面。