【问题标题】:reset a printer with VB.NET使用 VB.NET 重置打印机
【发布时间】:2012-10-26 15:46:32
【问题描述】:

我最近在 VB Web 应用程序中开发了一个标签系统,该系统可以打印到东芝 TEC 条码打印机,但它似乎永远无法正确排列。我已尝试更改设置并调整纸张大小,仅重新校准打印机似乎有所帮助,然后对齐再次消失。

我一直在考虑尝试解决此问题的方法是在页面上放置一个按钮,以允许用户重新设置/重新校准打印机。认为这比他们拉标签重新排列好。

这是用于打印标签的代码:

Public Sub SetPrintSettings(ByVal pd As PrintDocument, ByVal printer As String, ByVal printerselected As Integer)    

    Dim pSize As PaperSize    
    'set the printer
    pd.PrinterSettings.PrinterName = printer
    pd.DefaultPageSettings.Landscape = False

    pSize = New PaperSize("USER", 400, 202)
    pd.DefaultPageSettings.PaperSize = pSize
    pd.DefaultPageSettings.Margins = New Margins(0, 0, 0, 0)
End Sub

我已经查看了 PrinterSettings 和 DefaultPageSettings,但其中没有任何内容可以让我重置打印机。

有人有什么想法吗?

【问题讨论】:

  • 您需要找出重置该打印机的转义码,并在您想要重置时发送它们
  • 好吧,设置 PrintDocument.OriginAtMargins = True 并修改边距。
  • @Hans,我已经尝试相应地调整边距,但仍然会导致问题。我可以改变的唯一真正不同的设置是纸张尺寸,但它会继续改变你打印的越多。
  • @Mark,感谢您使用转义码输入,我想这就是我要做的。
  • @Robert 我也遇到了同样的问题,每个标签都以不同的边距打印。打印输出与打印预览完全不同。你实际上是按照什么来解决这个问题的。?请提出任何解决方案。

标签: vb.net printing calibration


【解决方案1】:

这确实是一条评论,但我已将其作为答案,因此格式更好:

我对导致此问题的原因的猜测。

  • 标签之间的间隙太小。这些打印机在检测间隙方面可能非常挑剔
  • 打印机上的间隙传感器损坏
  • 发送到打印机的命令不正确,例如指定比实际更大的标签大小。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-16
    • 2014-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    相关资源
    最近更新 更多