如何定制条形码并使其风格化

This article was translated from English: Does it need improvement?
Translated
View the article in English

海瑞尔 哈西米 本 奥马尔

多年来,条形码的使用越来越普及,应用范围也越来越广泛,无论是存储数据、ID 还是网页的 URL。在某些应用中,条形码在产品上是可见的,这就导致了对条形码样式选择的需求增加。因此,一些条形码类型/编码有了自己独特的外观,如PDF417AztecIntelligentMailMaxiCodeDataMatrix等等。

除此之外,IronBarcode 还为用户提供了一些选项,以便在条形码颜色条形码大小背景颜色等方面进一步调整条形码的样式。这些都是在我们的开源库的帮助下实现的、 IronDrawing.

适用于的C# NuGet库

安装使用 NuGet

Install-Package BarCode
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

适用于的C# NuGet库

安装使用 NuGet

Install-Package BarCode
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

开始在您的项目中使用IronPDF,并立即获取免费试用。

第一步:
green arrow pointer

查看 IronBarcodeNuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变。

适用于的C# NuGet库 nuget.org/packages/BarCode/
Install-Package BarCode

考虑安装 IronBarcode DLL 直接。下载并手动安装到您的项目或GAC表单中: IronBarCode.zip

手动安装到你的项目中

下载DLL

调整条形码大小示例

使用 ResizeTo 方法

调整条码大小是用户可以使用 IronBarcode 实现自定义的一个方面。要使用此功能,只需调用 ResizeTo 方法并输入新的,单位为像素 (px) 条形码。此操作将触发条形码的无损重新渲染。

请注意
如果数值太小,条形码无法读取,则会被忽略。

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-use-ResizeTo.cs
using IronBarCode;

// Create barcode
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100);

// Export barcode
barcode.SaveAsPng("output.png");

// Resize and export the barcode
barcode.ResizeTo(250, 100).SaveAsPng("useResizeTo.png");
Imports IronBarCode

' Create barcode
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.PDF417, 300, 100)

' Export barcode
barcode.SaveAsPng("output.png")

' Resize and export the barcode
barcode.ResizeTo(250, 100).SaveAsPng("useResizeTo.png")
VB   C#

可在 GeneratedBarcode 对象上调用 ResizeTo 方法。以下是运行上述代码片段生成的条形码图像。

调整大小前的条形码
调整大小后的条形码

使用 ResizeToMil 方法

IronBarcode 中的另一种调整大小的方法是 ResizeToMil 方法。与 ResizeTo 方法不同的是,该方法会调整以下组件:

  • 条形码元素:最窄条形码元素的宽度,以千分之一英寸为单位 (mil).
  • 高度(Height):条形码的高度,以英寸为单位 (默认为 1 英寸).

  • 分辨率每英寸点数 (默认值为 96 DPI).

也就是说,这种方法特别适用于一维条形码。

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-use-ResizeToMil.cs
using IronBarCode;

// Create barcode
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100);

// Export barcode
barcode.SaveAsPng("output.png");

// Resize and export the barcode
barcode.ResizeToMil(20, .73, 200).SaveAsPng("useResizeToMil.png");
Imports IronBarCode

' Create barcode
Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("12345", BarcodeEncoding.Codabar, 250, 100)

' Export barcode
barcode.SaveAsPng("output.png")

' Resize and export the barcode
barcode.ResizeToMil(20, .73, 200).SaveAsPng("useResizeToMil.png")
VB   C#

您也可以在 GeneratedBarcode 对象上调用此方法。在下图中,您将看到应用 ResizeToMil 方法的效果:条形码边缘的空白被消除,条形码的最窄元素和高度都根据提供给该方法的参数值进行了调整。

ResizeToMil 前的条形码
ResizeToMil 后的条形码

更改条形码和背景颜色

条形码样式设计最受欢迎的功能之一就是更改条形码和背景颜色。这要归功于 IronDrawingIronBarcode 提供了这一功能。通过使用 GeneratedBarcode 对象上的 ChangeBarCodeColorChangeBackgroundColor 方法,用户可以改变条形码及其背景的颜色。下面是一个简单的代码片段,演示如何实现这一功能。

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-change-barcode-color.cs
using IronBarCode;
using IronSoftware.Drawing;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec);

// Change barcode color
barcode.ChangeBarCodeColor(Color.DarkKhaki);

// Change barcode's background color
barcode.ChangeBackgroundColor(Color.ForestGreen);

barcode.SaveAsPng("coloredAztec2.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec)

' Change barcode color
barcode.ChangeBarCodeColor(Color.DarkKhaki)

' Change barcode's background color
barcode.ChangeBackgroundColor(Color.ForestGreen)

barcode.SaveAsPng("coloredAztec2.png")
VB   C#
彩色条形码

添加条形码注释示例

IronBarcode 还可以添加条码注释并使其样式化。同样,这里的注释样式也是由来自 IronDrawing 编辑注释颜色和字体。

:path=/static-assets/barcode/content-code-examples/how-to/customize-barcode-style-add-annotation.cs
using IronBarCode;
using IronSoftware.Drawing;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec, 500, 500);

// Change barcode and background color
barcode.ChangeBarCodeColor(Color.DarkCyan);
barcode.ChangeBackgroundColor(Color.PeachPuff);

// Create font for annotation
Font annotationFont = new Font("Candara", FontStyle.Bold, 70);

// Add annotation
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange);

// Create font for barcode value
Font barcodeValueFont = new Font("Cambria", FontStyle.Regular, 70);

// Add displayed barcode value
barcode.AddBarcodeValueTextBelowBarcode(barcodeValueFont, Color.SandyBrown);

barcode.SaveAsPng("annotationAndBarcodeValue.png");
Imports IronBarCode
Imports IronSoftware.Drawing

Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("https://ironsoftware.com/csharp/barcode/", BarcodeEncoding.Aztec, 500, 500)

' Change barcode and background color
barcode.ChangeBarCodeColor(Color.DarkCyan)
barcode.ChangeBackgroundColor(Color.PeachPuff)

' Create font for annotation
Dim annotationFont As New Font("Candara", FontStyle.Bold, 70)

' Add annotation
barcode.AddAnnotationTextAboveBarcode("IronBarcodeRocks!", annotationFont, Color.DarkOrange)

' Create font for barcode value
Dim barcodeValueFont As New Font("Cambria", FontStyle.Regular, 70)

' Add displayed barcode value
barcode.AddBarcodeValueTextBelowBarcode(barcodeValueFont, Color.SandyBrown)

barcode.SaveAsPng("annotationAndBarcodeValue.png")
VB   C#
带注释的彩色条形码

作为前面代码片段的扩展,我们实例化了两个新的IronSoftware.Drawing.Font对象,作为条形码上方和下方注释的字体。实例化字体时只需要Font Family

  • AddAnnotationTextAboveBarcode`:在条形码上方添加自定义注释文本。
  • AddBarcodeValueTextBelowBarcode:在条码下方添加条码值。

这两个方法接受相同的参数:IronSoftware.Drawing.Font 对象、IronSoftware.Drawing.Color 对象以及条形码与文本之间的间距。此外,"AddAnnotationTextAboveBarcode "方法需要一个注释文本字符串,因为该方法会在条形码上方添加自定义文本。

IronBarcode为用户提供了广泛的机会来自定义和风格他们的条形码,这只受限于用户的想象力。要了解更多有关定制 QR 码的信息,请参阅" "。如何定制 QR 代码并在其中添加徽标".

海瑞尔 哈西米 本 奥马尔

软件工程师

像所有优秀的工程师一样,Hairil 是一个热衷学习的人。他正在精进自己的 C#、Python 和 Java 知识,并利用这些知识为 Iron Software 团队成员增添价值。Hairil 毕业于马来西亚的马来西亚工艺大学(Universiti Teknologi MARA),获得了化学与工艺工程学士学位,然后加入了 Iron Software 团队。