水晶报表条码 128 转换器

Posted

技术标签:

【中文标题】水晶报表条码 128 转换器【英文标题】:Crystal Report Barcode 128 converter 【发布时间】:2018-10-21 14:58:06 【问题描述】:

我需要在 Crystal Report 中使用 c# windows 窗体打印 Barcode128。 输入字符串是这样的:

123456-abcdef-abc

我使用barcode.dll来构建格式化的128barcode:

string encodedText = BarCode.BarcodeConverter128.StringToBarcode("123456-abcdef-abc");
string path = @"D:\Projects\mypath\myreport.rpt";
ReportDocument cryRpt = new ReportDocument();
cryRpt.Load(path);

cryRpt.SetParameterValue("@inputString", encodedText);
crystalReportViewer1.ReportSource = cryRpt;
crystalReportViewer1.Refresh();

在 CrystalReportViewer1 中,文本框字体为“Code 128”

它显示一个条码,但无法从任何条码阅读器读取。 怎么了?

这是生成的条形码:

图片更新了!同样的问题。

提前感谢您的帮助。

【问题讨论】:

你能上传一个生成的条码吗? 您分享的图片质量不够好,无法验证为有效条形码。 您可以使用online barcode scanners 验证条形码。 【参考方案1】:

这是一张图片,展示了 Crystal Report UFL 如何在不依赖任何字体的情况下呈现条形码。 UFL 动态生成图像并将图像对象图形位置表达式定向到生成的图像文件。 Barcode Image Generated as Image via CUT Light UFL

【讨论】:

您好,您的图像条码工作正常。我怎样才能复制你的报告? Test_Barcode 公式是什么样的? 公式如我提供的图片所示。您只需将其用作“图形位置”属性的表达式。【参考方案2】:

你有我所说的“模糊代码”。 Crystal Reports 中的软件正在尝试使用抗锯齿使您的图像看起来更平滑。我担心的另一个问题是,即使图像被锐化,由于条和空格的宽度错误,它也无法扫描。

这里是放大的条形码图像和重叠在 Code 128B 中表示的字符串的清晰图像。条和空格不对齐。换句话说,即使您附加图像中的符号更清晰,您甚至可能有一个不可读的条形码。我怀疑您的条形码可能只显示整个条形码的右半部分,而左半部分被一些不够宽的边界框截断。您的barcode.dll 也可能在前 6 个字符上使用 Code 128C 以在条码宽度中保存两个字符,因为即使您缩放顶部条码以按字符排列,校验和字符似乎也不匹配。

我对 Microsoft 技术知之甚少,因此我无法帮助您,只能说您可能想尝试将字体设置得非常大并缩放页面以查看是否可以修复反别名问题。

我希望您可以在 Crystal Reports 中打开一个开关,让它停止自动抗锯齿,然后修复边界框问题。

【讨论】:

以上是关于水晶报表条码 128 转换器的主要内容,如果未能解决你的问题,请参考以下文章

vs asp.net水晶报表打印时无法显示条码

通过代码文件使用 crostab 对象创建水晶报表

如何用VB.NET做水晶报表?

C#怎么生成水晶报表

Winform中怎么使用水晶报表?

Visual Studio 2010 里面的水晶报表怎么弄?