IRONSOFTWAREHOME
USING IRONBARCODE

.NET条形码字体:如何在不依赖字体的情况下生成和打印条形码

Curtis Chau
Curtis Chau
Updated: 2026年6月3日

如果您想知道如何在实际应用程序中处理 VB .NET条形码字体,您并不孤单。 条形码字体(例如Code 39或 Code 128)一旦超出简单的演示范围,就经常会引发问题,字体需要安装到各个地方,打印机并不总是能识别它们,而且如果缺少某些东西,部署可能会失败。

本文展示了一种更简单的方法:使用IronBarcode在.NET中生成条形码图像。 这是我们内部推荐的方法,因为它避免了条形码字体容易带来的部署和打印机问题。

最后,您将了解条形码字体为何不足,以及如何使用 Visual Basic 中的几行代码以编程方式生成 Code 39 条形码(以及更多条形码)。

立即开始IronBarcode的免费试用,并按照以下示例在几分钟内生成条形码。

条形码字体是什么?它们为何存在不足?

条形码字体是一种特殊的字体,它将字符映射到条形码图案。 要使用 Code 39 字体创建条形码,开发人员会将数据编码为字符串,用开始字符和结束字符(通常是星号)将其包裹起来,然后使用已安装的字体渲染文本。 该字体可以将字符串在视觉上转换为可扫描的条形码。

这种基于字体的方法要求每台机器和打印机都安装条形码字体。 Code 39字体需要在源代码中手动处理停止字符和校验位,并且人类可读的条形码下方的文本需要用标准字体(如Arial)单独格式化。 兼容性问题经常出现,无论是在 Crystal Reports 集成、Visual Studio 设计器视图中,还是在开发用于跨不同系统环境部署时。

像IronBarcode这样的程序化条形码生成器可以解决这些问题。 它直接生成条形码图像文件(PNG、JPEG、GIF、TIFF 或 BMP),无需安装字体,无需分发,省时省力。 每个生成的条形码图像都遵循条形码符号类型规范,输出的是可移植的条形码图像,可用于任何打印机或文档。 本文余下部分将采用这种方法。

如何在不使用字体的情况下用 Visual Basic 生成 Code 39 条形码?

在.NET中,使用IronBarcode生成 Code 39 条形码只需要几行代码。 以下代码演示了如何对数据进行编码并导出:

Imports IronBarCode
Module Program
    Sub Main(args As String())
        ' Generate a Code 39 barcode from a string value
        Dim myBarcode = BarcodeWriter.CreateBarcode("HELLO-2025", BarcodeWriterEncoding.Code39)
        ' Export the generated barcode as a PNG file
        myBarcode.SaveAsPng("Code39Barcode.png")
    End Sub
End Module
VB .NET

输出条形码图像

VB .NET 条码字体:如何在没有字体依赖的情况下生成和打印条码:图片 1 - 来自代码示例的输出图片

BarcodeWriter.CreateBarcode接受数据字符串和条形码符号作为参数。 使用 BarcodeWriterEncoding.Code39, IronBarcode可以处理完整的编码规范,起始字符、停止字符和校验位都会自动添加,无需手动操作字符串。 这比 Code 39 条形码字体有了很大的改进,Code 39 条形码字体如果忘记添加星号或校验位计算错误,就会产生无法读取的条形码。

Code 39 是一种线性条形码符号体系,可对大写字母、数字和特殊字符进行编码,因此 Code 39 条形码广泛适用于标签和库存场景。 IronBarcode 的条形码生成器还支持 Code 128、QR 码、EAN-13、UPC-A、Data Matrix 以及数十种其他格式,均通过相同的 CreateBarcode 方法生成。 上面的源代码适用于任何 VB .NET项目、控制台、桌面或 Web 应用程序。 每个条形码图像还可以导出为 TIFF 或 BMP 格式,以满足特殊的打印需求。

如何设置条形码样式并将其导出为多种格式?

IronBarcode 的流畅 API 使条形码的定制变得简单。 以下示例代码展示了如何设置边距大小、调整条形码大小以及在 Code 128 条形码上添加注释文本:

Imports IronBarCode
Imports IronSoftware.Drawing
Module Program
    Sub Main(args As String())
        ' Generate a Code 128 barcode with styling
        Dim styledBarcode = BarcodeWriter.CreateBarcode("PKG-98765", BarcodeWriterEncoding.Code128)
        ' Set margin size in pixels around the barcode
        styledBarcode.SetMargins(10, 10, 10, 10)
        ' Resize — x dimension (width) and y dimension (height) in pixels
        styledBarcode.ResizeTo(400, 120)
        ' Add annotation with Arial font above barcodes
        styledBarcode.AddAnnotationTextAboveBarcode("Package Label")
        ' Display encoded value as readable text below barcodes
        styledBarcode.AddBarcodeValueTextBelowBarcode()
        ' Export barcodes to JPEG and GIF formats
        styledBarcode.SaveAsJpeg("Styled.jpeg")
        styledBarcode.SaveAsGif("Styled.gif")
    End Sub
End Module
VB .NET

输出样式条形码

VB .NET 条码字体:如何在没有字体依赖的情况下生成和打印条码:图片 2 - 具有特定样式的条码示例

SetMargins接受每边的像素值,或者接受一个用于统一边距大小(条形码图像周围的空白)的单个值。 ResizeTo 控制条形码的 x 尺寸和 y 尺寸(以像素为单位)。 对于物理单位,ResizeToMil 以千分之一英寸为单位指定宽度,支持在可配置的 DPI 下实现真正的单位精度,这在精确测量对扫描仪兼容性至关重要时非常有用。

AddBarcodeValueTextBelowBarcode自动将编码字符串作为人类可读的文本添加到条形码图像下方,无需单独的字体或绘图代码。 这些功能复制了条形码字体提供的功能,但作为一个可生成条形码的便携式条形码图像对象,您可以将其保存为 BMP、TIFF 或任何其他受支持的格式。 有关导出选项的更多信息,请参阅输出数据格式指南

如何使用 Visual Basic 应用程序生成和打印条形码标签?

条形码生成后,将其打印成标签非常简单。 条形码生成器导出任何打印机都能处理的标准图像,无需考虑字体依赖性。 以下代码为产品标签生成二维码:

Imports IronBarCode
Module Program
    Sub Main(args As String())
        ' Generate a QR code barcode for a product label
        Dim qrBarcode = QRCodeWriter.CreateQrCode("https://example.com/product/12345", 300)
        ' Export barcode to file path for printer output
        qrBarcode.SaveAsJpeg("ProductLabel.jpeg")
        ' Send the exported file to a printer via System.Drawing
        Console.WriteLine("Barcode saved — ready for printer")
    End Sub
End Module
VB .NET

从示例代码生成条形码

VB .NET 条码字体:如何在没有字体依赖的情况下生成和打印条码:图片 3 - 已生成条码,准备打印

无论是打印 Code 39 条形码、Code 128 运输条形码还是用于库存的 QR 条形码,以下过程都是相同的:将条形码生成为条形码图像,导出到文件,然后发送到打印机。 条形码方向在生成过程中得到正确处理。 对于高级场景,请注意,VB.NET的条码打印教程详细介绍了配置和方向选项。 本文还可以与VB .NET条形码生成器教程配合使用,以获取更多示例图案;也可以与IronBarcode文档网站配合使用,以获取完整的 API 参考。

结论

本文介绍了如何在.NET中摆脱传统的条形码字体,并使用IronBarcode以编程方式生成条形码。 无论您需要Code 39条形码、Code 128条形码、QR条形码或其他线性和2D条形码,IronBarcode都是一个有用的条形码生成器,可以在编译的Visual Basic .NET应用程序中生成高质量的条形码图像,对于任何开发将条形码功能集成到.NET项目中的开发人员来说,这都是非常有价值的功能。 本文中的源代码示例可以适用于您的应用程序所需的任何条形码符号体系。

第一步:
arrow pointer

准备好申请生产许可证了吗? 探索IronBarcode 的许可选项,找到适合您项目的方案,或者从NuGet下载免费试用版

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

相关文章

Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
预约您的免费现场演示
Booking Badge

深受全球数百万工程师信赖

Iron Software 的客户徽标
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户