1

我对 LeadTools 唯一想要的就是能够将 QR 条码读/写到 pdf 文件。这是我创建的将条形码写入 pdf 的方法:

private void WriteBarcodeToPDF(string ServerPath_imageFile, string value, bool topLeft = true) { // 创建条码数据 QRBarcodeData barcode = BarcodeData.CreateDefaultBarcodeData(BarcodeSymbology.QR) as QRBarcodeData; BarcodeEngine 引擎 = 新 BarcodeEngine();

    using (RasterCodecs codecs = new RasterCodecs())
    {
        using (RasterImage image = codecs.Load(ServerPath_imageFile))
        {
            // Save the image
            barcode.SymbolModel = QRBarcodeSymbolModel.Model2AutoSize;
            barcode.Value       = value;

            // We will use the alignment to position the barcodes, so use all of the image
            barcode.Bounds      = new LogicalRectangle(0, 0, image.ImageWidth, image.ImageHeight, LogicalUnit.Pixel);

            // Set the write options
            QRBarcodeWriteOptions options = new QRBarcodeWriteOptions();

            if (topLeft)
            {
                options.HorizontalAlignment = BarcodeAlignment.Near;
                options.VerticalAlignment   = BarcodeAlignment.Near;
            }
            else
            {
                options.HorizontalAlignment = BarcodeAlignment.Far;
                options.VerticalAlignment   = BarcodeAlignment.Far;
            }

            //Options
            options.GroupNumber = 0;
            options.GroupTotal  = 0;
            options.XModule     = 30; //(Value allowed: 1 - 100) 
            options.ECCLevel    = QRBarcodeECCLevel.LevelH;

            // Write it
            engine.Writer.WriteBarcode(image, barcode, options);

            //Save As new Image.
            codecs.Save(image, ServerPath_imageFile, RasterImageFormat.RasPdf, 1);
        }
    }
}

这是我的问题:

  1. 我想存储在条形码中的值只是一个 10-12 位的数字。而已。我听说有 QR Barcode 21x21 的 ECC 率很高。您能否修改我的方法,使其生成符合我需要(10-12 位数字)并具有最高回收率 (ECC) 的条码?

  2. 输出的 pdf 质量很差,不仅在我放条形码的页面上,而且 pdf 文件中的每一页的文本也都显着下降,我认为它不应该是这样的这个。我的方法一定有问题。请你修好吗?

谢谢大家。

4

1 回答 1

1

关于确定您需要使用哪个条形码,请阅读以下页面,其中列出了您可以存储在不同 QR 条形码中的数据量:http: //www.leadtools.com/sdk/barcode/qr-chart.htm

您可以通过将 SymbolModel 属性设置为“QRBarcodeSymbolModel.Model2Version1”而不是“QRBarcodeSymbolModel.Model2AutoSize”来选择大小。但是,如果您将其设置为 AutoSize,则工具包将自动优化条码大小。

关于质量差,问题可能是由源 PDF 的加载分辨率引起的。尝试将加载分辨率提高到 300 DPI 或更高。您可以通过将 CodecsRasterizeDocumentLoadOptions 类的 XResolution 和 YResolution 属性设置为所需的值来实现此目的。

请参阅以下链接: http: //www.leadtools.com/help/leadtools/v18/dh/co/leadtools.codecs~leadtools.codecs.codecsrasterizedocumentloadoptions.html

于 2014-01-09T16:42:25.243 回答