跳至页脚内容
USING IRONBARCODE

在ASP.NET Core Web 应用程序中生成条形码

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

以下简单示例展示了如何创建 Code 128 条形码,并从 MVC 控制器操作中将其作为 PNG 图像返回:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;

public IActionResult GenerateBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    barcode.AddBarcodeValueTextBelowBarcode();
    byte[] barcodeBytes = barcode.ToPngBinaryData();
    return File(barcodeBytes, "image/png");
}
using IronBarCode;
using Microsoft.AspNetCore.Mvc;

public IActionResult GenerateBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    barcode.AddBarcodeValueTextBelowBarcode();
    byte[] barcodeBytes = barcode.ToPngBinaryData();
    return File(barcodeBytes, "image/png");
}
Imports IronBarCode
Imports Microsoft.AspNetCore.Mvc

Public Function GenerateBarcode(data As String) As IActionResult
    Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128)
    barcode.ResizeTo(400, 120)
    barcode.AddBarcodeValueTextBelowBarcode()
    Dim barcodeBytes As Byte() = barcode.ToPngBinaryData()
    Return File(barcodeBytes, "image/png")
End Function
$vbLabelText   $csharpLabel

立即开始免费试用,即可跟随以下完整的教程代码示例进行学习。

如何在.NET Core项目中安装条形码库?

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

Install-Package BarCode

该软件包与.NET Core 6、7、8、10 及更高版本以及.NET Framework 4.6.2+ 兼容。 该库会自动处理所有依赖项,无需额外的条形码字体或系统配置。 安装完成后,将命名空间引用添加到控制器或服务文件中:

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

支持哪些.NET版本和平台?

IronBarcode支持所有现代.NET运行时环境:

  • .NET 10、9、8、7、6——完全支持 LTS 和 STS 版本
  • .NET Framework 4.6.2+ -- 旧版应用程序支持 -部署目标平台-- Windows、Linux、macOS、Docker、Azure、AWS -移动目标平台-- 通过.NET MAUI连接 Android 和 iOS。

无需安装外部 GD 库、本地编解码器或条形码字体。 该库完全独立,内部解决了所有编码逻辑。

如何将命名空间添加到控制器?

安装 NuGet 包后,在任何需要生成条形码的控制器、服务或 Razor Page 模型顶部引用 IronBarCode 命名空间:

using IronBarCode;
using Microsoft.AspNetCore.Mvc;
using IronBarCode;
using Microsoft.AspNetCore.Mvc;
Imports IronBarCode
Imports Microsoft.AspNetCore.Mvc
$vbLabelText   $csharpLabel

这条单一的 using 指令可以访问 BarcodeWriterQRCodeWriterBarcodeReader 以及所有支持的类型,用于生成和读取条形码。

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

在 MVC 控制器中创建条形码需要用到 IronBarCode 类中的 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() 方法接受条形码数据作为第一个参数,编码格式作为第二个参数。 这种方法可以根据用户输入或数据库值动态创建条形码。

要将条形码图像保存到项目文件夹,请使用 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 格式,以便直接嵌入到网页中。

如何将条形码作为文件下载返回?

要将条形码作为可下载文件而不是内嵌图像返回,请在响应中设置 Content-Disposition 标头:

public IActionResult DownloadBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    byte[] pdfBytes = barcode.ToPdfBinaryData();
    return File(pdfBytes, "application/pdf", "barcode.pdf");
}
public IActionResult DownloadBarcode(string data)
{
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128);
    barcode.ResizeTo(400, 120);
    byte[] pdfBytes = barcode.ToPdfBinaryData();
    return File(pdfBytes, "application/pdf", "barcode.pdf");
}
Public Function DownloadBarcode(data As String) As IActionResult
    Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(data, BarcodeWriterEncoding.Code128)
    barcode.ResizeTo(400, 120)
    Dim pdfBytes As Byte() = barcode.ToPdfBinaryData()
    Return File(pdfBytes, "application/pdf", "barcode.pdf")
End Function
$vbLabelText   $csharpLabel

这种模式适用于生成货运标签、产品标签工作流程,以及最终用户需要直接保存或打印条形码文档的任何场景。

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

IronBarcode支持超过 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 代码生成支持纠错级别,该级别可确定代码在可读状态下可被损坏的程度。 对于预期会有物理磨损的打印二维码应用,请使用 "中 "或 "高"。 了解更多关于二维码定制选项的信息

数据矩阵和其他 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);
upcBarcode.SaveAsPng("upc-barcode.png");
// Create UPC-A barcode for retail products
GeneratedBarcode upcBarcode = BarcodeWriter.CreateBarcode(
    "012345678905",
    BarcodeWriterEncoding.UPCA);
upcBarcode.SaveAsPng("upc-barcode.png");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

输出

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

UPC A 和 EAN 条形码包含自动校验和验证功能,可防止条形码生成过程中出现编码错误。 有关支持的格式的完整列表,请参阅条形码格式参考

如何自定义和设置条形码图像样式?

为 Web 应用程序设置条形码样式涉及调整颜色、字体、边距和注释。 流畅的 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() 方法会在条形码周围添加空白,以提高扫描器的可读性。 您可以调整注释文本的字体设置,更改字体系列和字体大小,并广泛自定义条形码样式。 该库使用系统字体渲染文本,无需外部条形码字体。

如何在Razor视图中直接嵌入条形码?

对于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

这种方法无需将条形码图像保存到文件系统中,从而保持 Web 服务的无状态性。 完整的 API 参考文档记录了所有可用的方法和属性。

如何在ASP.NET Core中读取和扫描条形码?

从上传的图像或文件流中读取条形码由 BarcodeReader 类处理。 这在接收工作流程、退货处理以及任何需要在服务器端解码扫描条形码的场景中都非常有用:

using IronBarCode;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

public class BarcodeScanController : Controller
{
    public IActionResult ScanBarcode(IFormFile uploadedImage)
    {
        using var stream = uploadedImage.OpenReadStream();
        var results = BarcodeReader.Read(stream);
        if (results.Count > 0)
        {
            string decodedValue = results[0].Value;
            return Ok(new { barcode = decodedValue });
        }
        return BadRequest("No barcode detected in image.");
    }
}
using IronBarCode;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;

public class BarcodeScanController : Controller
{
    public IActionResult ScanBarcode(IFormFile uploadedImage)
    {
        using var stream = uploadedImage.OpenReadStream();
        var results = BarcodeReader.Read(stream);
        if (results.Count > 0)
        {
            string decodedValue = results[0].Value;
            return Ok(new { barcode = decodedValue });
        }
        return BadRequest("No barcode detected in image.");
    }
}
Imports IronBarCode
Imports Microsoft.AspNetCore.Http
Imports Microsoft.AspNetCore.Mvc

Public Class BarcodeScanController
    Inherits Controller

    Public Function ScanBarcode(uploadedImage As IFormFile) As IActionResult
        Using stream = uploadedImage.OpenReadStream()
            Dim results = BarcodeReader.Read(stream)
            If results.Count > 0 Then
                Dim decodedValue As String = results(0).Value
                Return Ok(New With {.barcode = decodedValue})
            End If
            Return BadRequest("No barcode detected in image.")
        End Using
    End Function
End Class
$vbLabelText   $csharpLabel

BarcodeReader.Read() 方法接受文件路径、流和 System.Drawing.Bitmap 对象。 它会自动检测条形码格式,并返回一个 BarcodeResult 对象集合,每个对象包含解码值、格式类型和在图像中的位置。 当多个条形码出现在单个图像中时(例如,在仓库货架照片上),读取器会返回集合中检测到的所有值,而不仅仅是第一个值。

对于高吞吐量的ASP.NET应用程序来说,性能也是值得考虑的因素。 该阅读器支持感兴趣区域扫描,可在分析之前将图像裁剪到特定的像素矩形区域。 当条形码始终出现在图像的已知区域时,这将显著减少处理时间。

对于调整低质量图像对比度或调整检测灵敏度等高级场景,请参阅条形码读取文档

如何在ASP.NET中将条形码导出为 PDF?

直接在 PDF 文档中生成嵌入条形码是运输标签、仓库标签和合规文件的常见要求。 IronBarcode支持直接保存为PDF格式:

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
    "SHIP-2024-99471",
    BarcodeWriterEncoding.Code128);
barcode.ResizeTo(500, 150);
barcode.AddAnnotationTextAboveBarcode("Shipping Label");
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPdf("shipping-label.pdf");
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(
    "SHIP-2024-99471",
    BarcodeWriterEncoding.Code128);
barcode.ResizeTo(500, 150);
barcode.AddAnnotationTextAboveBarcode("Shipping Label");
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPdf("shipping-label.pdf");
Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode( _
    "SHIP-2024-99471", _
    BarcodeWriterEncoding.Code128)
barcode.ResizeTo(500, 150)
barcode.AddAnnotationTextAboveBarcode("Shipping Label")
barcode.AddBarcodeValueTextBelowBarcode()
barcode.SaveAsPdf("shipping-label.pdf")
$vbLabelText   $csharpLabel

对于多条形码 PDF 文档(例如,一页产品标签),分别生成每个条形码,然后使用 PDF 库将它们组合起来。 IronPDF集成指南解释了如何将条形码添加到现有的 PDF 模板中,这对于向预先设计的标签布局添加条形码非常有用。

SaveAsPdf() 方法还接受输出尺寸,以便渲染的 PDF 页面与标签打印机所需的物理标签尺寸相匹配。

如何处理条形码生成错误和验证?

条形码编码规则因格式而异。 例如,UPC-A 需要 11 或 12 位数字,EAN-13 需要 12 或 13 位数字,而 Code 128 在标准尺寸下可读输出的实际限制为 48 个字符。 传递无效数据会引发 IronBarCodeEncoderException

在控制器操作中显式处理编码错误:

public IActionResult SafeGenerate(string data, string format)
{
    try
    {
        var encoding = Enum.Parse<BarcodeWriterEncoding>(format, true);
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, encoding);
        return File(barcode.ToPngBinaryData(), "image/png");
    }
    catch (IronBarCodeEncoderException ex)
    {
        return BadRequest($"Encoding error: {ex.Message}");
    }
    catch (ArgumentException ex)
    {
        return BadRequest($"Unknown format: {ex.Message}");
    }
}
public IActionResult SafeGenerate(string data, string format)
{
    try
    {
        var encoding = Enum.Parse<BarcodeWriterEncoding>(format, true);
        GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(data, encoding);
        return File(barcode.ToPngBinaryData(), "image/png");
    }
    catch (IronBarCodeEncoderException ex)
    {
        return BadRequest($"Encoding error: {ex.Message}");
    }
    catch (ArgumentException ex)
    {
        return BadRequest($"Unknown format: {ex.Message}");
    }
}
Imports System

Public Function SafeGenerate(data As String, format As String) As IActionResult
    Try
        Dim encoding = [Enum].Parse(Of BarcodeWriterEncoding)(format, True)
        Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(data, encoding)
        Return File(barcode.ToPngBinaryData(), "image/png")
    Catch ex As IronBarCodeEncoderException
        Return BadRequest($"Encoding error: {ex.Message}")
    Catch ex As ArgumentException
        Return BadRequest($"Unknown format: {ex.Message}")
    End Try
End Function
$vbLabelText   $csharpLabel

对于生产环境,请在调用 CreateBarcode() 之前验证输入数据长度和字符集。 IronBarcode文档提供了每种受支持的条形码类型的具体格式编码约束。

下一步计划是什么?

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

探索以下资源,了解更多信息:

IronBarcode入门指南——安装和首次运行演练 -从图像中读取条形码——服务器端解码扫描的条形码 -二维码定制——包括徽标、颜色和纠错 -导出为 PDF -- 在 PDF 文档中嵌入条形码 条形码样式指南——注释、颜色和边距 -完整的 API 参考——所有类、方法和属性 -许可选项-- 选择用于生产部署的许可证 -在线代码示例-- 每种条形码类型的可运行示例 -二维条码格式——PDF417、Aztec、MaxiCode 等 -一维条码格式——Code 39、ITF、EAN-13 等

在免费试用期内,您可以体验所有功能。 对于生产部署和商业用途,请查看许可选项,选择适合您项目需求的许可证。 该库支持位图和矢量导出,每个版本都保持与 Windows、Linux、Android 和 iOS 部署目标的兼容性。

如有任何疑问,或想了解.NET替代条形码库的基准测试,或Enterprise集成支持,请访问IronBarcode支持门户

立即开始使用 IronBarcode。
green arrow pointer

常见问题解答

IronBarcode在ASP.NET Core中支持哪些条形码格式?

IronBarcode支持超过 30 种条形码格式,包括 QR 码、Data Matrix、Code 128、UPC-A、EAN-13、Code 39、PDF417、Aztec、MaxiCode、ITF 等。它同时支持一维线性条形码和二维矩阵条形码。

如何从ASP.NET MVC 控制器中将生成的条形码作为图像返回?

调用 BarcodeWriter.CreateBarcode() 并传入数据和编码格式,然后使用 ToPngBinaryData() 获取字节数组,并通过控制器操作中的 File(bytes, 'image/png') 返回该数组。

IronBarcode能否读取ASP.NET中上传图片中的条形码?

是的。可以使用 `BarcodeReader.Read()` 方法,并传入一个 `IFormFile` 流来解码用户上传图片中的条形码。读取器会将所有检测到的条形码返回为一个 `BarcodeResult` 对象集合。

如何在不保存文件的情况下将条形码嵌入Razor视图中?

调用 barcode.ToDataUrl() 获取 Base64 数据 URL 字符串,将其分配给 ViewBag,并在Razor视图中将其作为 img 元素的 src 属性呈现。

IronBarcode支持哪些.NET版本?

IronBarcode支持.NET 6、7、8、9、10 和.NET Framework 4.6.2+。它可在 Windows、Linux、macOS、Docker、Azure、AWS、Android 和 iOS 上运行。

在ASP.NET中如何处理无效条形码数据?

将 BarcodeWriter.CreateBarcode() 函数用 try-catch 语句包裹起来,以捕获 IronBarCodeEncoderException 异常。在编码之前,根据格式特定的约束条件验证输入长度和字符集,以防止出现异常。

IronBarcode能否将条形码导出为PDF格式?

是的。对任何 GeneratedBarcode 对象调用 SaveAsPdf() 方法即可生成 PDF 文件。该方法接受输出路径和可选的页面尺寸(用于匹配实际标签尺寸)。

使用IronBarcode是否需要条形码字体?

不IronBarcode是一个独立的程序,它在内部处理所有编码和渲染工作。无需条形码字体、GD 库或额外的系统配置。

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

钢铁支援团队

我们每周 5 天,每天 24 小时在线。
聊天
电子邮件
打电话给我