如何使用 GenCode128 生成带有嵌入文本的条形码

Posted

技术标签:

【中文标题】如何使用 GenCode128 生成带有嵌入文本的条形码【英文标题】:How to generate a barcode with embedded text using GenCode128 【发布时间】:2018-05-11 02:45:59 【问题描述】:

我正在尝试生成一个条码,其文本嵌入在条码本身下面,但我只能生成没有嵌入文本的条码。

这是我的代码:

Public Function process_printbarcode(lbl169 As Label)

    Dim length As Integer = 1

    Dim mybarcode As Image = Code128Rendering.MakeBarcodeImage(lbl169.Text.ToString, Integer.Parse(length.ToString()), False)

    Admin_Menu.PictureBox3.Image = mybarcode

    Return True

End Function

【问题讨论】:

您缺少数据类型的一些非常基本的方面。 .Text 属性是字符串,所以不需要在它们上面使用ToString();那么如果length 是整数,则无需将其转换为字符串,然后将其解析回整数。甚至不需要变量,因为 1 应该可以工作 快速浏览该项目的源代码后,开发人员似乎没有包含该选项。您可以自己将人类可读的文本添加到图像中,也可以使用内置该功能的库,例如 barcodelib...查看其 IncludeLabel 属性 您还应该知道删除旧帖子通常是一个非常糟糕的主意。如果他们被否决,则 DV 仍然对您不利,但这很糟糕,因为任何人都无法支持您应用的任何更改/修复。如果上面有答案,那是非常非常糟糕的,而且对你更不利 ...更不用说它当然是一个严重的阻碍,当你有机会回答你的任何事情时,你会删除他们的工作 @Plutonix 嗯,我没有删除它们。因为我回答了我姐姐的问题,他们删除了我的帐户 【参考方案1】:

GenCode128 不包含在条形码下方显示编码值作为图像一部分的选项。您可以使用 Bitmap 和 Graphics 类来修改图像并向其添加文本,但我认为使用具有该功能的不同 DLL 会更容易。我个人使用的一个是 BarcodeLib。您可以通过以下几种方式将其添加到您的项目中:

    通过在包管理器控制台中运行 Install-Package BarcodeLib -Version 1.0.0.23 将其添加为 Nuget Package 下载项目的GitHub source-code 并自己构建BarcodeLib.dll

无论哪种方式,只需将其作为参考添加到您的解决方案中即可。 BarcodeLib 有更多条码参数可供您设置(以及其他几种编码类型),而且创建它们非常容易:

Private Function Code128Image(ByVal value As String, _
                      Optional height As Integer = 100, _
                      Optional barWidth As Integer = 1, _
                      Optional labelIncluded As Boolean = True, _
                      Optional labelPosition As BarcodeLib.LabelPositions = LabelPositions.BOTTOMCENTER, _
                      Optional barcodeRotation As System.Drawing.RotateFlipType = System.Drawing.RotateFlipType.RotateNoneFlipNone) _
                  As System.Drawing.Image
    Using barcodeImage As New BarcodeLib.Barcode
        With barcodeImage
            .Height = height
            .BarWidth = barWidth
            .IncludeLabel = labelIncluded
            .LabelPosition = labelPosition
            .RotateFlipType = barcodeRotation
            Return .Encode(BarcodeLib.TYPE.CODE128, value)
        End With
    End Using
End Function

拨打Admin_Menu.PictureBox3.Image = Code128Image("123456789") 会得到你:

【讨论】:

不错的答案兄弟,但我决定只添加一个人类可读的文本,这也是你的答案,我现在遇到了一些问题,有一些循环,你想让我把问题链接到你吗?可以帮我?仅当您愿意时

以上是关于如何使用 GenCode128 生成带有嵌入文本的条形码的主要内容,如果未能解决你的问题,请参考以下文章

android:BarcodeFormat.CODE_128 不显示文本

如何使用 Apache PDFBox 创建表格

Elasticsearch:如何部署 NLP:文本嵌入和向量搜索

拥有字体后,如何在 Adob​​e Forms 中自动生成 Code128?

如何使用带有barcode4j库的pdfbox(1.8.12)将Code128条形码图像添加到现有pdf?

在 Delphi 中生成带有嵌入图像的 HTML 电子邮件