【发布时间】:2011-01-30 08:37:02
【问题描述】:
如何从 .NET 应用程序创建带有二维条码(例如 QR 码 http://en.wikipedia.org/wiki/QR_Code)的 pdf 文档?
我将(可能)使用 iTextSharp 创建文档。绘制二维条码应该使用哪个组件?
【问题讨论】:
如何从 .NET 应用程序创建带有二维条码(例如 QR 码 http://en.wikipedia.org/wiki/QR_Code)的 pdf 文档?
我将(可能)使用 iTextSharp 创建文档。绘制二维条码应该使用哪个组件?
【问题讨论】:
PDFFlow library 支持包括二维码在内的条码(变体 1-40,提供四级纠错)。
在您的 C# 项目中,添加对来自 nuget.org 的免费库 Gehtsoft.PDFFlowLib.Barcodes 的引用。
在段落中添加二维码示例:
DocumentBuilder.New()
.AddSection()
.AddParagraph()
.AddQRCode("Some information for sharing",
QRCodeEncodingMethod.Binary,
QRCodeErrorCorrection.M,
QRCodeVersion.Version4,
4) .ToDocument()
.Build("Result.pdf");
将带有 URL 的二维码添加到表格单元格的示例:
var textUrl = "https://www.nuget.org/packages/Gehtsoft.PDFFlowLib/";
DocumentBuilder.New()
.AddSection()
.AddTable()
.SetWidth(230)
.AddColumnToTable()
.AddColumnToTable()
.AddRow()
.AddCellToRow("QR-code in table cell")
.AddCell()
.AddQRCodeUrl(textUrl)
.SetWidth(150)
.ToDocument()
.Build("Result.pdf");
这是一个包含许多示例的教程:AddingQRCodes。
请注意,Gehtsoft.PDFFlowLib.Barcodes 库是 PDFFlow library 的扩展,用于生成 PDF 文档。
【讨论】:
您可以使用Aspose barcode 和Aspose pdf 组件轻松创建一系列带有条形码的文档。
论坛demonstrating examples 中有很多关于如何执行此操作的示例。此外,如果将来需要,您还可以使用这些组件从原始 PDF 中提取条形码值。
【讨论】:
Google 说 http://sourceforge.net/projects/pdf417lib/,尽管它自 2005 年以来就没有更新过并且处于测试阶段。如果您使用它,请务必报告。
(感觉二维条码很不寻常,可能是因为通常只有一个 ID 就足够了,而且一维扫描仪要便宜得多。)
【讨论】:
iTextSharp 支持多种条码标准(根据http://itextsharp.sourceforge.net/tutorial/ch09.html 的教程)
* Barcode39: code 39 and code 39 extended
* Barcode128: code 128 and the special encoding UCC/EAN-128
* BarcodeEAN: EAN13, EAN8, UPCA, UPCE, and EAN with supplemental 5, EAN with supplemental 5, EAN with supplemental 2
* BarcodeInter25: interleaved 2 of 5
* BarcodePostnet: postnet and planet
【讨论】:
您可以使用DevExpress Reports 来做到这一点,他们在报告中支持二维条码,还支持将报告导出为多种格式,如 PDF。
【讨论】:
您不能用条形码创建一个图像并将其嵌入到 PDF 中吗?
【讨论】: