标签打印模糊 - wpf

时间:2017-09-30 15:19:55

标签: wpf label blurry barcode-printing

我正在尝试使用此框架http://barcoderender.codeplex.com/ argox os-214 上打印条形码,但总是模糊不清,无法使用扫描仪阅读。

我已经尝试了其他一些解决方案,但我仍然没有得到它,如果使用“Bartender”打印机软件,工作就好了。标签尺寸为40mmX60mm,并在窗户打印中设置。 按照原型代码:

    public MainWindow()
    {
      InitializeComponent();
      Code39BarcodeDraw code39 = BarcodeDrawFactory.Code39WithChecksum;
      pcImage.Source = GetImageStream(code39.Draw("1234567", 13));
    }

    public static BitmapSource GetImageStream(System.Drawing.Image myImage)
    {
      var bitmap = new Bitmap(myImage);
      IntPtr bmpPt = bitmap.GetHbitmap();
      BitmapSource bitmapSource =
       System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
             bmpPt,
             IntPtr.Zero,
             Int32Rect.Empty,
             BitmapSizeOptions.FromEmptyOptions());

      bitmapSource.Freeze();

      return bitmapSource;
    }

    private void btnPrint_Click(object sender, RoutedEventArgs e)
    {
      PrintDialog dlg = new PrintDialog();
      bool? result = dlg.ShowDialog();

      if (result.HasValue && result.Value) {
        pcImage.Measure(new System.Windows.Size(dlg.PrintableAreaWidth, dlg.PrintableAreaHeight));
        pcImage.Arrange(new Rect(new System.Windows.Point(0, 0), pcImage.DesiredSize));

        dlg.PrintVisual(pcImage, "Print a Large Image");
      }
    }
  }

这只是一个图像组件......好吧,任何帮助都会受到赞赏。提前致谢。 打印机有203dpi,它是wpf。 Label with the blurry code

1 个答案:

答案 0 :(得分:1)

好吧,我忘了这个...... 但如果这可以帮助某人...要打印到argox 214-os或其他海鸥条形码打印机,你需要一些默认布局,如这个文件(.prn) 例如:barcode.prn

n
M0500
O0220
V0
f220
D
L
D11
A2
1a52050007900551063
121100000280089Preco R$ 39,9
121100000490068REGM OGB T-M
Q0001
E

前七行

n
M0500
O0220
V0
f220
D
L
D11
A2

总是一样 -

我正在使用此布局

Barcode

(这是一台旧打印机,只是为了测试,所以我知道它似乎“模糊”......) 然后你可以看到下一行

如果是条形码1a5205000790055 +我的代码(1063)

这是标签价格121100000280089 +我的价格字符串(Preco R $ 39,9)

依旧......

我是这样打印的

  Printer printer = new Printer(); (RawPrinter library)

  printer.PrintRawFile(dlg.PrintQueue.FullName, Directory.GetCurrentDirectory() + "\\code39.prn", false);

哦,你可以在nuget上找到RawPrint ... Install-Package RawPrint -Version 0.2.0

忘记所有这一切并尝试BARTENDER DESIGNER 只需创建标签设计并导出到prn文件,但记得使用打印机字体,如果使用windows字体,则会创建一个prn文件很多不受欢迎的角色。