在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
本教程将以 IronBarcode 库为例,演示如何在 C# 控制台应用程序和 .NET Windows 窗体应用程序中扫描二维码和条形码。
使用 IronBarcode 库,可以同时扫描和读取多个条形码,还能成功扫描不完美的图像。 首先让我们明确一下什么是 BarCode 扫描仪。
BarCode 是一个正方形或长方形图像,由一系列宽度不等的平行黑线和白线组成。 条形码扫描器或条形码阅读器是一种可以读取印刷条形码、解码条形码中包含的数据并将数据发送到计算机的设备。
以下步骤将介绍如何借助 IronBarcode 库创建条形码扫描器。
打开 Visual Studio > 点击 Create New Project > 选择 Windows Forms Application Template > 按 Next > 给项目命名 > 按 Next > 选择目标 .NET Framework > 点击 Create 按钮。
创建项目后,在 Visual Studio 工具箱中设计如下表单:PictureBox、Label、TextBox 和 Button 控件。
BarCode 扫描仪
可以使用以下三种方法之一安装 BarCode Library:
在软件包管理器控制台中编写以下命令。 它将为您下载和安装软件包。
Install-Package BarCode
您也可以使用 NuGet 软件包解决方案安装 BarCode Library。 只需按照以下步骤操作:
点击工具 > NuGet软件包管理器 > 为解决方案管理NuGet软件包。
这将为您打开 NuGet 包管理器。 点击浏览并搜索 BarCode,然后安装类库。
作为一种替代方案,IronBarCode.Dll可下载并添加到项目中作为参考。
下载后,将以下参考资料添加到您的 BarCode 阅读器项目中。
using IronBarCode;
using IronBarCode;
Imports IronBarCode
使用 IronBarcode library 与 IronBarcode for .NET 一起使用,在 .NET 中读取条形码或 QR 码变得异常简单。.NET 条码阅读器.
在您的项目中浏览图片,您希望阅读。 它将在 PictureBox
中打开; 现在点击 "扫描代码"。 文本将显示在文本框中。
以下是用于打开图片的 "浏览 "按钮的代码:
// open file dialog
OpenFileDialog open = new OpenFileDialog();
// image filters
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {
// display image in picture box
pictureBox1.Image = new Bitmap(open.FileName);
// store image file path in class data member. Initialize it as string ImageFileName;
ImageFileName = open.FileName;
}
// open file dialog
OpenFileDialog open = new OpenFileDialog();
// image filters
open.Filter = "Image Files(*.jpg; *.png; *.jpeg; *.gif; *.bmp)
*.jpg;*.png;*.jpeg;*.gif;*.bmp";
if (open.ShowDialog() == DialogResult.OK) {
// display image in picture box
pictureBox1.Image = new Bitmap(open.FileName);
// store image file path in class data member. Initialize it as string ImageFileName;
ImageFileName = open.FileName;
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
扫描代码 "按钮的代码:
BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
BarcodeResult Result = BarcodeReader.Read(ImageFileName);
textBox1.Text = Result.Text;
Dim Result As BarcodeResult = BarcodeReader.Read(ImageFileName)
textBox1.Text = Result.Text
条形码扫描仪在文本框中显示的条形码数据如下:
*拟使用 C# 扫描的 BarCode 图像***
在本节中,IronBarcode 库将有效处理涉及倾斜二维码的实际情况。 虽然倾斜角度的 QR 代码可以由以下设备处理和读取阅读尽管如此,解决这个问题仍需要更多时间。 IronBarcode 库提供了一种定制的方式来使用条码阅读器选项作为额外参数,以处理此类图像输入。 代码如下
// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
new SharpenFilter(),
new InvertFilter(),
new ContrastFilter(),
new BrightnessFilter(),
new AdaptiveThresholdFilter(),
new BinaryThresholdFilter()
};
BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
// Set chosen filters in BarcodeReaderOptions:
ImageFilters = filtersToApply,
ExpectBarcodeTypes = BarcodeEncoding.QRCode
BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
// Choose which filters are to be applied (in order);
var filtersToApply = new ImageFilterCollection() {
new SharpenFilter(),
new InvertFilter(),
new ContrastFilter(),
new BrightnessFilter(),
new AdaptiveThresholdFilter(),
new BinaryThresholdFilter()
};
BarcodeReaderOptions myOptionsExample = new BarcodeReaderOptions()
{
// Set chosen filters in BarcodeReaderOptions:
ImageFilters = filtersToApply,
ExpectBarcodeTypes = BarcodeEncoding.QRCode
BarcodeEncoding.Code128,
};
BarcodeResult Result = BarcodeReader.Read(ImageFileName, myOptionsExample);
textBox1.Text = Result.Text;
IRON VB CONVERTER ERROR developers@ironsoftware.com
打开倾斜的二维码图像后,输出结果如下:
倾斜的 QrCode 图像
可以从 PDF 文件中扫描条形码图像,并根据需要适当显示每个结果。 以下示例代码可让您从 PDF 文件中读取多个 BarCode。
// Multiple barcodes may be scanned up from a single document or image. A PDF document may also used as the input
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) {
string Value = PageResult.Value;
int PageNum = PageResult.PageNumber;
System.Drawing.Bitmap Img = PageResult.BarcodeImage;
BarcodeEncoding BarcodeType = PageResult.BarcodeType;
byte [] Binary = PageResult.BinaryValue;
Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
// Multiple barcodes may be scanned up from a single document or image. A PDF document may also used as the input
imagePagedBarcodeResult [] PDFResults = BarcodeReader.ReadPdf("MultipleBarcodes.pdf");
// Work with the results
foreach (var PageResult in PDFResults) {
string Value = PageResult.Value;
int PageNum = PageResult.PageNumber;
System.Drawing.Bitmap Img = PageResult.BarcodeImage;
BarcodeEncoding BarcodeType = PageResult.BarcodeType;
byte [] Binary = PageResult.BinaryValue;
Console.WriteLine(PageResult.Value + " on page " + PageNum);
}
' Multiple barcodes may be scanned up from a single document or image. A PDF document may also used as the input
Dim PDFResults() As imagePagedBarcodeResult = BarcodeReader.ReadPdf("MultipleBarcodes.pdf")
' Work with the results
For Each PageResult In PDFResults
Dim Value As String = PageResult.Value
Dim PageNum As Integer = PageResult.PageNumber
Dim Img As System.Drawing.Bitmap = PageResult.BarcodeImage
Dim BarcodeType As BarcodeEncoding = PageResult.BarcodeType
Dim Binary() As Byte = PageResult.BinaryValue
Console.WriteLine(PageResult.Value & " on page " & PageNum)
Next PageResult
PDF 文件中出现的 BarCode 和 QR 码:
C# - 从 PDF 结果中读取 BarCode
在实际使用案例中,经常会发现图像、扫描件、缩略图或照片中的 BarCode 有瑕疵,可能包含数字噪音或有偏差。 本节演示如何从缩略图中读取 BarCode 数据。
IronBarcode 库使用了C# 条码生成器此外,BarCode.NET 还能读取已损坏的条形码缩略图。
**自动校正 BarCode 缩略图尺寸。 使用 C# 中的 IronBarcode 可读取文件***
它能自动检测出因太小而无法合理表现实际条形码的条形码图像,然后进行缩放并清除所有与缩放相关的数字噪音,从而使其重新具有可读性。
// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
// Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
BarcodeResult SmallResult = BarcodeReader.Read("ThumbnailOfBarcode.gif");
' Small or 'Thumbnail' barcode images are automatically detected by IronBarCode and corrected for wherever possible even if they have much digital noise.
Dim SmallResult As BarcodeResult = BarcodeReader.Read("ThumbnailOfBarcode.gif")
IronBarcode for .NET 是一个多功能的 .NET 软件库,也是一个可扩展的软件工具。C#二维码生成器它可以扫描和读取各种条形码图像格式,无论这些条形码是完美的屏幕截图,还是照片、扫描件或其他格式的图像。不完美的真实世界图像. 此外,IronBarcode 还提供多种自定义选项,以提高条码读取速度,例如作物区或多线程和ML 模型的准确性. 参观正式文件页面有关 IronBarcode 的更多信息。
目前,如果您购买全套铁艺套件您只需花两个图书馆的钱,就可以得到五个图书馆。