【问题标题】:Reading PDF417 Codes阅读 PDF417 代码
【发布时间】:2014-08-22 06:21:06
【问题描述】:

我正在尝试创建 PDF417 阅读器应用程序。我能够创建 PDF417 代码。

这是我用来创建 PDF417 代码的代码:

using STROKESCRIBECLSLib;

StrokeScribeClass ss = new StrokeScribeClass();
ss.Alphabet = enumAlphabet.PDF417;
ss.Text = "My Text";
ss.PDF417ErrLevel = 8;
ss.PDF417SymbolAspectRatio = 5;
int w = ss.BitmapW;
int h = ss.BitmapH;
ss.SavePicture(@"D:\pdf417.bmp", enumFormats.BMP, w, h);
if (ss.Error != 0)
    MessageBox.Show(ss.ErrorDescription, "Write Error");

当我尝试读取文件时:

MessageBox.Show(ss.GetPicture(enumFormats.GIF, w, h).ToString());

它给了我:

System.__ComObject

有人知道如何阅读此 PDF417 代码中的文本吗?

【问题讨论】:

  • 显然ToString() 不会返回解码后的字符串。 GetPicture 正在返回一个对象,查看它的字段/方法。阅读文档。

标签: c# pdf417


【解决方案1】:

如果我理解正确,您似乎正在尝试从 StrokeScribe 库生成的位图文件中读取 PDF417 条形码。你需要一个条形码识别库来做到这一点。我推荐 Inlite 的 ClearImage barcode recognition SDK,它有免费的开发许可证。

下面是一些在 C# 中使用 ClearImage 的示例代码:

using Inlite.ClearImageNet;
...
BarcodeReader reader = new BarcodeReader();
reader.Pdf417 = true;
Barcode[] barcodes = reader.Read(@"D:\pdf417.bmp");
foreach (Barcode barcode in barcodes)
  {MessageBox.Show ("TEXT = " + barcode.Text);}

免责声明:我过去曾为 Inlite 做过一些工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 2020-10-16
    • 2023-03-03
    • 2010-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多