#c# #pdf417
#c# #pdf417
Вопрос:
Я пытаюсь создать приложение для чтения 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?
Комментарии:
1. Очевидно
ToString()
, что не возвращает декодированную строку.GetPicture
возвращает объект, посмотрите на его поля / методы. Прочитайте документацию.
Ответ №1:
Если я правильно понимаю, похоже, вы пытаетесь прочитать штрих-код PDF417 из растрового файла, сгенерированного библиотекой StrokeScribe. Для этого вам понадобится библиотека распознавания штрих-кодов. Я рекомендую SDK для распознавания штрих-кодов ClearImage от Inlite, который имеет бесплатную лицензию разработчика.
Вот несколько примеров кода для использования ClearImage с C#:
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.