如何将条形码图像插入打印对话框

本文关键字:插入 打印 对话框 图像 条形码 | 更新日期: 2023-09-27 18:22:10

我有这个程序,我在其中打印一些关于托盘(物流)的信息,我需要为此添加条形码。我环顾四周,发现http://www.codeproject.com/Articles/20823/Barcode-Image-Generation-Library看起来确实很有希望。

我添加了.dll引用并添加了以下代码:

using BarcodeLib;
// Create barcode size 100, 100 with the ordernumber in type EAN13
    Barcode b = new Barcode(order.OrderNr);
    b.Encode(TYPE.EAN13, order.OrderNr, 100, 100);

现在我需要知道的是如何将其添加到页面上的特定位置。我目前添加文本的方式如下:

private void PrintLabel(PrintPageEventArgs e, Graphics g)
{
    marginTop = 8;
    marginLeft = 5;
    int row = marginTop;
    g.DrawString("Order nr: ", headerTitleFont, blackText, marginLeft, row);
    g.DrawString(order.OrderNr, headerTextFont, blackText, marginLeft + 120, row);
    row += 22;
    ...etc...
    Barcode b = new Barcode(order.OrderNr);
    b.Encode(TYPE.EAN13, order.OrderNr, 100, 100);
    // Print the label b here on position: marginLeft, row
}

如何将条形码图像插入打印对话框

根据给定的文档,Encode返回System.Drawing.Image

它非常方便,因为它可以让你简单地使用将其绘制成图形

Barcode b = new Barcode(order.OrderNr);
Image barcodeImage = b.Encode(TYPE.EAN13, order.OrderNr, 100, 100);
g.DrawImage(barcodeImage, marginLeft, row);