我有这个程序,我打印一些托盘(物流)的信息,我需要添加条形码。我环顾四周,发现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
}
答案 0 :(得分:1)
根据given documentation,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);