c#扫描仪扫描条形码

时间:2013-08-27 07:34:21

标签: c# barcode epson

我现在正在尝试使用c#创建一个Web应用程序或软件来实现一个过程 - 当我使用办公室扫描仪扫描一张纸(包含条形码)时,软件或Web应用程序将自动获得条形码内容。

我现在对如何实现这一点感到有点困惑。有人对此有所了解吗?我是否需要调用扫描仪的API或其他东西?我的扫描仪品牌是爱普生。

提前致谢。

4 个答案:

答案 0 :(得分:3)

这将为您提供有关创建所需应用程序的一般概念

  • 首先,您必须使用TWAIN或使用 Windows图像采集
  • 从扫描仪捕获图像
  • 然后你必须从图像中读取条形码。你可以使用一些第三方库来读取条形码。

一些可以帮助你的文章..

答案 1 :(得分:0)

条码扫描器会自动解码Bars并返回一个字符串!尝试在Ms-Word或记事本中使用。在某些条形码阅读器中,字符串后跟return

答案 2 :(得分:0)

实际上我们通常不会这样做,因为它会大大降低应用程序的性能。比方说,例如,如果同时扫描两个文件,时间间隔太短,扫描仪将无法分离两个文件。

因此,我的建议是创建一个Web应用程序,手动上传文档和进程。

答案 3 :(得分:0)

使用Asprise C# VB.NET Scanning & Imaging SDK,您可以从TWAIN WIA扫描仪获取图像并同时提取条形码 - 即使您的扫描仪本身不支持读取条形码。

当前工作目录下saves the scanned images into a multi-page PDF file下方的代码段,并打印出已识别的条形码:

Result result = new AspriseImaging().Scan(new Request()
  .SetTwainCap(TwainConstants.ICAP_PIXELTYPE, TwainConstants.TWPT_RGB) // color mode
  .SetTwainCap(TwainConstants.ICAP_SUPPORTEDSIZES, TwainConstants.TWSS_USLETTER) // paper size
  .SetRecognizeBarcodes(true)
  .AddOutputItem(new RequestOutputItem(AspriseImaging.OUTPUT_SAVE, AspriseImaging.FORMAT_PDF).SetSavePath(".\\${TMS}${EXT}")),
 "select", true, true);

List<string> barcodes = result == null ? null : result.GetBarcodes();
Console.WriteLine("Barcodes: " + string.Join(";\n", barcodes == null ? new string[0] : barcodes.ToArray()));

// Alternatively, request can be specified using the following JSON:
{
   "twain_cap_setting" : 
    {
      "ICAP_PIXEXELTYPE" : "TWPT_RGB",
      "ICAP_SUPPORPORTEDSIZES" : "TWSS_USLESLETTER"
    }, 
   "recognize_barcodes" : true,
   "output_settings" : [ {
     "type" : "save",
     "format" : "pdf",
     "save_path" : ".\\${TMS}${EXT}"   } ]
 }

在此处下载并运行reading barcodes while scanning from TWAIN scanners demos

有关详细信息,请参阅developer's guide to C# VB.NET scanning and imaging API