【问题标题】:Crystal Reports barcode Code 128 with C#Crystal Reports 条码代码 128 与 C#
【发布时间】:2016-04-27 20:13:35
【问题描述】:

我对打印和读取条形码感到很困惑。我想使用 C# 生成Code 128 裸码。使用 Crystal Reports 我发现了两种方法:

  • 通过添加 dll 文件
  • 使用条码Code 128字体

但是,我希望在自己的应用程序中执行此操作,而不是 Crystal Reports。

我想知道它们之间有什么区别? 使用字体 1 是否有任何问题,因为它更简单并且不向我的项目添加任何文件?

终于有人可以给我一个下载条形码 Code 128 字体的链接(免费)

【问题讨论】:

  • 必须是字体还是可以生成条形码图像?
  • 不,不一定是字体

标签: c# barcode-printing


【解决方案1】:

关于 Code128 的事情是,您不能只使用一种字体就可以使用它(例如 CODE39 就是这种情况)。为什么?

  1. 您需要添加开始/停止代码。
  2. 可以在条码中选择和混合三个子集 A、B 和 C。它们在可以表示的字符上有所不同(例如:子集 C 只能包含偶数个数字,子集 A 不能包含小写字母等)。您需要知道要编码的内容。
  3. 您需要计算校验和。
  4. 符号的某些“ASCII 代码”超出了普通字符集的可打印区域。

结果:您确实需要一个软件来“编码”条形码。

示例:软件需要转换

Hello User

进入

<STARTB>Hello User<CHECKSUM><STOPCODE>

或者号码

0815

必须变成

<STARTC>(/<CHECKSUM><STOPCODE>

当然,您可以使用现成的库。但是:如果您search for a description of Code 128,您将很容易自己实现它。通常你会得到一张图片。

【讨论】:

    【解决方案2】:

    我发现这个项目确实帮助我解决了条形码问题; http://www.codeproject.com/Articles/20823/Barcode-Image-Generation-Library.

    它支持大量的编码并且相当容易使用

                    string value = "12345678";
                    TYPE encoding = TYPE.CODE128;
    
                    var barcode = new Barcode(value, encoding);
                    barcode.IncludeLabel = true; //We want to display the value below the image.
                    Image image = barcode.Encode(encoding, value, 300, 100);
                    //Handle the image here...
    

    虽然它不是字体,但它确实会返回这样的图像

    您可以随意打印或处理。

    【讨论】:

    • 我在发帖之前查看了该项目,但我不想要独立软件,我真正不希望将这个问题作为我在 windows 窗体中需要生成的所有项目的一部分来处理根据在文本框中输入的数据进行条形码
    猜你喜欢
    • 2014-04-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-30
    • 2018-03-15
    • 1970-01-01
    • 2012-05-13
    相关资源
    最近更新 更多