我正在尝试从文本字符串生成条形码,然后使用 iTextSharp 将结果 PDF。现在,我有以下代码:
// Create a Document object
var pdfToCreate = new Document(PageSize.A4, 0, 0, 0, 0);
// Create a new PdfWrite object, writing the output to a MemoryStream
var outputStream = new MemoryStream();
var pdfWriter = PdfWriter.GetInstance(pdfToCreate, outputStream);
PdfContentByte cb = new PdfContentByte(pdfWriter);
// Open the Document for writing
pdfToCreate.Open();
PdfPTable BarCodeTable = new PdfPTable(3);
// Create barcode
Barcode128 code128 = new Barcode128();
code128.CodeType = Barcode.CODE128_UCC;
code128.Code = "00100370006756555316";
// Generate barcode image
iTextSharp.text.Image image128 = code128.CreateImageWithBarcode(cb, null, null);
// Add image to table cell
BarCodeTable.AddCell(image128);
// Add table to document
pdfToCreate.Add(BarCodeTable);
pdfToCreate.Close();
当我运行它并尝试以编程方式打开 PDF 时,我收到一条错误消息,提示“文档没有页面”。
但是,当我使用:
pdfToCreate.Add(image128);
(而不是添加到表格中,我将其添加到单元格中),条形码显示(尽管它漂浮在文档之外)。
我想将条形码发送到桌子上,以便更轻松地格式化文档。最终产品将是从数据库中读取的 20-60 个条形码。知道我要去哪里错了吗?