跳至页脚内容
USING IRONBARCODE

ASP .NET 条形码生成:为您的 Web 应用程序构建条形码生成器

将条形码生成集成到 ASP.NET 网络应用程序中,可为库存管理、产品跟踪和文档自动化提供强大的功能。 本文演示了如何在 .NET Core 项目中使用强大的条形码生成器库生成条形码,该库支持多种格式,包括 QR Code、Data Matrix、Code 128 和 UPC A。

开始免费试用,跟随下面的教程代码示例学习。

如何在我的 .NET Core 项目中安装 BarCode 库?

为您的 ASP.NET Core Web 应用程序添加条形码生成功能需要安装 IronBarcode NuGet 软件包。 打开 Visual Studio,使用软件包管理器控制台安装依赖项:

Install-Package BarCode

该软件包兼容 .NET Core 6、7、8 和更新版本,以及 .NET Framework 4.6.2+ 版本。 该库的核心 DLL 可自动处理所有依赖关系,无需额外的条形码字体或系统配置。 每个版本都支持 Windows,软件可在不同的 .NET 环境中无缝运行。 安装完成后,将命名空间引用添加到控制器或服务文件中:

using IronBarCode;
using IronBarCode;
Imports IronBarCode
$vbLabelText   $csharpLabel

如何在 ASP.NET Core Web 应用程序中生成 BarCode?

在 MVC 控制器中创建条形码需要使用 BarcodeWriter 类。 下面的示例演示了一个完整的控制器操作,该操作可根据用户提供的 URL 或文本创建 Code 128 条形码:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;
public class BarcodeController : Controller
{
    public IActionResult GenerateBarcode(string data)
    {
        // Generate barcode from input data
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
            data,
            BarcodeWriterEncoding.Code128);
        barcode.ResizeTo(400, 120);
        barcode.AddBarcodeValueTextBelowBarcode();
        // Return as image for display in browser
        byte[] barcodeBytes = barcode.ToPngBinaryData();
        return File(barcodeBytes, "image/png");
    }
}
using IronBarCode;
using Microsoft.AspNetCore.Mvc;
public class BarcodeController : Controller
{
    public IActionResult GenerateBarcode(string data)
    {
        // Generate barcode from input data
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
            data,
            BarcodeWriterEncoding.Code128);
        barcode.ResizeTo(400, 120);
        barcode.AddBarcodeValueTextBelowBarcode();
        // Return as image for display in browser
        byte[] barcodeBytes = barcode.ToPngBinaryData();
        return File(barcodeBytes, "image/png");
    }
}
Imports IronBarCode
Imports Microsoft.AspNetCore.Mvc

Public Class BarcodeController
    Inherits Controller

    Public Function GenerateBarcode(data As String) As IActionResult
        ' Generate barcode from input data
        Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128)
        barcode.ResizeTo(400, 120)
        barcode.AddBarcodeValueTextBelowBarcode()
        ' Return as image for display in browser
        Dim barcodeBytes As Byte() = barcode.ToPngBinaryData()
        Return File(barcodeBytes, "image/png")
    End Function
End Class
$vbLabelText   $csharpLabel

输出条形码图像

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-1.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图片 1 - 生成的条码。

BarcodeWriter.CreateBarcode() 方法接受条形码数据作为第一个参数,编码格式作为第二个参数。 这种方法可让您根据用户输入或数据库值动态创建 BarCode。 与某些需要外部 GDr 库的 PHP 实现不同,该 .NET 解决方案是独立的。

要将条形码图像保存到项目文件夹中,请使用 SaveAsImage() 方法:

barcode.SaveAsImage("wwwroot/images/generated-barcode.png");
barcode.SaveAsImage("wwwroot/images/generated-barcode.png");
barcode.SaveAsImage("wwwroot/images/generated-barcode.png")
$vbLabelText   $csharpLabel

该库支持多种输出格式,包括 PNG、GIF、BMP、SVG 和 JPEG。 您还可以将条形码导出为 HTML 以直接嵌入网页。

Web 应用程序支持哪些 BarCode 类型?

BarCode 生成器支持 30 多种格式。 以下是如何创建最常用类型的详细信息:

二维码生成

// Create QR Code with custom size
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCode(
    "https://example.com/product/12345",
    500,
    QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("product-qr.png");
// Create QR Code with custom size
GeneratedBarcode qrCode = QRCodeWriter.CreateQrCode(
    "https://example.com/product/12345",
    500,
    QRCodeWriter.QrErrorCorrectionLevel.Medium);
qrCode.SaveAsPng("product-qr.png");
' Create QR Code with custom size
Dim qrCode As GeneratedBarcode = QRCodeWriter.CreateQrCode( _
    "https://example.com/product/12345", _
    500, _
    QRCodeWriter.QrErrorCorrectionLevel.Medium)
qrCode.SaveAsPng("product-qr.png")
$vbLabelText   $csharpLabel

输出 QR 代码

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-2.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图片 2 - 图片 2 of 6 与 ASP .NET Barcode Generation 相关:为您的 Web 应用程序构建一个条码生成器。

QR 代码生成支持纠错级别,该级别可确定代码在可读状态下可被损坏的程度。 对于预期会有物理磨损的打印二维码应用,请使用 "中 "或 "高"。 了解有关QR 代码自定义选项的更多信息。

数据矩阵和其他 2D 格式

// Create Data Matrix barcode
GeneratedBarcode dataMatrix = BarcodeWriter.CreateBarcode(
    "DMX-2024-001",
    BarcodeWriterEncoding.DataMatrix);
dataMatrix.SaveAsGif("datamatrix.gif");
// Create Data Matrix barcode
GeneratedBarcode dataMatrix = BarcodeWriter.CreateBarcode(
    "DMX-2024-001",
    BarcodeWriterEncoding.DataMatrix);
dataMatrix.SaveAsGif("datamatrix.gif");
' Create Data Matrix barcode
Dim dataMatrix As GeneratedBarcode = BarcodeWriter.CreateBarcode( _
    "DMX-2024-001", _
    BarcodeWriterEncoding.DataMatrix)
dataMatrix.SaveAsGif("datamatrix.gif")
$vbLabelText   $csharpLabel

输出数据矩阵

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-3.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图像 3 - 生成的数据矩阵。

数据矩阵 BarCode 适用于需要紧凑、高密度编码的场景。 该库还能生成 PDF417、Aztec 和 MaxiCode 格式。 与线性格式相比,这些二维条形码类型存储的数据要多得多,同时还能保持可靠的扫描精度。

线性条形码(UPC、EAN、Code 39)

// Create UPC-A barcode for retail products
GeneratedBarcode upcBarcode = BarcodeWriter.CreateBarcode(
    "012345678905",
    BarcodeWriterEncoding.UPCA);
// Create UPC-A barcode for retail products
GeneratedBarcode upcBarcode = BarcodeWriter.CreateBarcode(
    "012345678905",
    BarcodeWriterEncoding.UPCA);
' Create UPC-A barcode for retail products
Dim upcBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("012345678905", BarcodeWriterEncoding.UPCA)
$vbLabelText   $csharpLabel

输出

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-4.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图片 4 - 生成的条码。

UPC A 和 EAN 条形码包括自动校验和验证,可防止条形码生成过程中出现编码错误。

如何自定义和导出 BarCode 图像?

为您的网络应用程序设计 BarCode 风格涉及调整颜色、字体、页边距和注释。 流畅的 API 使定制变得简单:

GeneratedBarcode styledBarcode = BarcodeWriter.CreateBarcode(
    "STYLED-2024",
    BarcodeWriterEncoding.Code128);
// Apply styling
styledBarcode.ResizeTo(450, 150);
styledBarcode.SetMargins(20);
styledBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.DarkBlue);
styledBarcode.AddAnnotationTextAboveBarcode("Product ID:");
styledBarcode.AddBarcodeValueTextBelowBarcode();
// Export to multiple formats
styledBarcode.SaveAsPng("styled-barcode.png");
styledBarcode.SaveAsPdf("styled-barcode.pdf");
GeneratedBarcode styledBarcode = BarcodeWriter.CreateBarcode(
    "STYLED-2024",
    BarcodeWriterEncoding.Code128);
// Apply styling
styledBarcode.ResizeTo(450, 150);
styledBarcode.SetMargins(20);
styledBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.DarkBlue);
styledBarcode.AddAnnotationTextAboveBarcode("Product ID:");
styledBarcode.AddBarcodeValueTextBelowBarcode();
// Export to multiple formats
styledBarcode.SaveAsPng("styled-barcode.png");
styledBarcode.SaveAsPdf("styled-barcode.pdf");
Dim styledBarcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("STYLED-2024", BarcodeWriterEncoding.Code128)
' Apply styling
styledBarcode.ResizeTo(450, 150)
styledBarcode.SetMargins(20)
styledBarcode.ChangeBarCodeColor(IronSoftware.Drawing.Color.DarkBlue)
styledBarcode.AddAnnotationTextAboveBarcode("Product ID:")
styledBarcode.AddBarcodeValueTextBelowBarcode()
' Export to multiple formats
styledBarcode.SaveAsPng("styled-barcode.png")
styledBarcode.SaveAsPdf("styled-barcode.pdf")
$vbLabelText   $csharpLabel

有风格的 BarCode 图像

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-5.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图片 5 - 输出样式的条码。

SetMargins()方法会在条形码周围添加空白,以提高扫描仪的可读性。 您可以调整注释文本的字体设置,更改字体族和字体大小,并广泛自定义条形码样式。 该库使用系统字体渲染文本,无需安装外部 BarCode 字体。

对于 ASP.NET MVC 视图,将条形码生成 Base64 字符串,以便直接嵌入 HTML:

public IActionResult DisplayBarcode()
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
        "INV-2024-0042",
        BarcodeWriterEncoding.Code128);
    string base64Image = barcode.ToDataUrl();
    ViewBag.BarcodeImage = base64Image;
    return View();
}
public IActionResult DisplayBarcode()
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
        "INV-2024-0042",
        BarcodeWriterEncoding.Code128);
    string base64Image = barcode.ToDataUrl();
    ViewBag.BarcodeImage = base64Image;
    return View();
}
Public Function DisplayBarcode() As IActionResult
    Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("INV-2024-0042", BarcodeWriterEncoding.Code128)
    Dim base64Image As String = barcode.ToDataUrl()
    ViewBag.BarcodeImage = base64Image
    Return View()
End Function
$vbLabelText   $csharpLabel

显示条形码

!a href="/static-assets/barcode/blog/asp-net-barcode/asp-net-barcode-6.webp">ASP .NET 条码生成:为您的 Web 应用程序构建条码生成器:图片 6 - 条码显示在我们的浏览器中。

在 Razor 视图中,将其显示在 <div> 元素中:

<div class="barcode-container">
    <img src="@ViewBag.BarcodeImage" alt="Generated Barcode" />
</div>
<div class="print-actions">
    <button onclick="window.print()">Print Barcode</button>
</div>
<div class="barcode-container">
    <img src="@ViewBag.BarcodeImage" alt="Generated Barcode" />
</div>
<div class="print-actions">
    <button onclick="window.print()">Print Barcode</button>
</div>
HTML

这种方法无需将条形码图像保存到文件系统中,从而使您的网络服务保持无状态。 您可以根据需要调整输出分辨率,以保证打印质量或屏幕显示效果。 完整的 API 参考记录了所有可用的方法和属性。

摘要

使用 IronBarcode 构建 ASP.NET 条形码生成器可为您的 .NET Core Web 应用程序创建、样式化和导出条形码图像提供可靠的解决方案。 该库可自动处理复杂的编码标准,同时通过开发人员友好的 API 提供广泛的自定义功能。 无论是生成用于移动扫描的 QR 码、用于工业应用的 Data Matrix 条形码,还是用于零售的 UPC 码,该软件都能与 ASP.NET MVC 控制器和 Razor 页面无缝集成。

您可以在免费评估期内测试完整的功能集。 该库支持位图和矢量输出,每个版本都能保持 Windows、Android 和 iOS 部署目标的兼容性。 对于生产部署和商业使用,查看许可选项,根据您的项目要求选择合适的许可。

立即开始使用 IronBarcode。
green arrow pointer

常见问题解答

将条形码生成集成到 ASP.NET Core 网络应用程序中有哪些好处?

将条形码生成集成到 ASP.NET Core Web 应用程序中可增强库存管理、产品跟踪和文档自动化等功能,为高效处理数据提供无缝体验。

条码生成器库支持哪些条码格式?

条形码生成器库支持多种格式,包括 QR Code、Data Matrix、Code 128 和 UPC A,可在各种应用程序中广泛使用。

我可以在我的 .NET Core 项目中使用 IronBarcode 生成 QR 代码吗?

是的,IronBarcode 允许您在 .NET Core 项目中生成 QR 代码,提供完整的 C# 代码示例,实现无缝集成。

BarCode 如何改善网络应用程序中的库存管理?

BarCode 可以快速准确地跟踪产品,减少手工输入错误,提高网络应用程序的运行效率,从而简化库存管理。

有可能在 ASP.NET 中使用 BarCode 自动执行文档流程吗?

是的,条形码可用于在 ASP.NET 应用程序中自动执行文档流程,通过对必要信息进行编码,可以自动扫描和处理,从而节省时间并减少错误。

在 ASP.NET Core MVC 项目中开始生成 BarCode 需要哪些条件?

要开始在 ASP.NET Core MVC 项目中生成条形码,您需要集成 IronBarcode 这样的条形码生成器库,它提供全面的 C# 示例并支持各种条形码格式。

IronBarcode 可以同时处理一维和二维条码格式吗?

是的,IronBarcode 能够处理一维和二维条码格式,是满足不同应用需求的多功能选择。

BarCode 生成如何支持网络应用程序中的产品跟踪?

条形码生成支持产品跟踪,为每件产品提供唯一的标识符,可以方便地扫描条形码,在网络应用程序中实时更新和检索产品信息。

Jordi Bardia
软件工程师
Jordi 最擅长 Python、C# 和 C++,当他不在 Iron Software 利用这些技能时,他就在游戏编程。分享产品测试、产品开发和研究的责任,Jordi 在持续的产品改进中增加了巨大的价值。多样的经验使他面临挑战并保持投入,他表示这是在 Iron Software 工作的最喜欢的方面之一。Jordi 在佛罗里达州迈阿密长大,并在佛罗里达大学学习计算机科学和统计学。