java实现条形码一维码的生成、打印功能源码

java实现条形码一维码JBarcode打印

因为公司最近得项目需要一个打印一维码的功能,百度了很多相关文章,自己重新整理了一下,生成一个工具类,可以直接实现生成一维码的功能,源代码如下:
开始前必须引入jbarcode包

org.jbarcode
jbarcode
0.2.8

工具类BarcodeUtils源代码如下:
public class BarcodeUtils {
// 设置条形码的高度
private static final int BARCODE_HEIGHT = 65;
// 设置条形码的分辨率
private static final int BARCODE_DPI = 300;

public static void createBarcode(String message, String fileName)
{
    try
    {
        JBarcode localJBarcode = new JBarcode(EAN13Encoder.getInstance(), WidthCodedPainter.getInstance(), EAN13TextPainter.getInstance());
        //生成. 欧洲商品条码(=European Article Number)
        //这里我们用作图书条码
        BufferedImage localBufferedImage = localJBarcode.createBarcode(message);
        saveToGIF(localBufferedImage, fileName);
        localJBarcode.setEncoder(Code39Encoder.getInstance());
        localJBarcode.setPainter(WideRatioCodedPainter.getInstance());
        localJBarcode.setTextPainter(BaseLineTextPainter.getInstance());
        localJBarcode.setBarHeight(BARCODE_HEIGHT);
        localJBarcode.setShowCheckDigit(false);


    }
    catch (Exception localException)
    {
        localException.printStackTrace();
    }
}

static void saveToJPEG(BufferedImage paramBufferedImage, String paramString)
{
    saveToFile(paramBufferedImage, paramString, "jpeg");
}

static void saveToPNG(BufferedImage paramBufferedImage, String paramString)
{
    saveToFile(paramBufferedImage, paramString, "png");
}

static void saveToGIF(BufferedImage paramBufferedImage, String paramString)
{
    saveToFile(paramBufferedImage, paramString, "gif");
}

static void saveToFile(BufferedImage paramBufferedImage, String paramString1, String paramString2)
{
    try
    {
        FileOutputStream localFileOutputStream = new FileOutputStream("D:/A/" + paramString1);
        ImageUtil.encodeAndWrite(paramBufferedImage, paramString2, localFileOutputStream, BARCODE_DPI, BARCODE_DPI);
        localFileOutputStream.close();
    }
    catch (Exception localException)
    {
        localException.printStackTrace();
    }
}

//测试
public static void main(String[] args){
    String message="788515004012";
    String fileName ="788515004012.jpg";
    BarcodeUtils.createBarcode(message, fileName);
}

}

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
生成一维条形码的方法有很多种,其中一种常用的方法是使用VC(Visual C++)编程实现。下面是一个使用VC实现生成一维条形码的简单示例。 首先,我们需要安装一个第三方库来帮助我们生成条形码,例如Zint。可以从其官网(https://sourceforge.net/projects/zint/)下载最新版本的Zint库。 接下来,我们打开VC,并创建一个新的Win32控制台应用程序项目。在项目中,我们需要含头文件和库文件。 首先,我们将Zint库中的头文件复制到我们的VC项目的源文件目录中。然后在VC项目中添加头文件的引用。 在项目设置中,我们需要将Zint库的库文件目录和库文件名称添加到VC项目的链接器中。 接下来,我们可以在源文件中编写生成条形码的代。 首先,我们需要含Zint库的头文件。 然后,我们可以定义一个函数来生成条形码。在函数中,我们可以使用Zint库中的函数来设置条形码的内容和参数。 我们可以为条形码指定内容,例如一个字符串,然后使用Zint库的函数来生成条形码的位图。最后,我们可以将位图保存为图像文件或在控制台中显示。 整个过程的代如下所示: #include "zint.h" int main() { // 创建一个Zint库的结构体 struct zint_symbol *my_symbol = ZBarcode_Create(); // 设置条形码类型 my_symbol->symbology = BARCODE_128; // 设置条形码的内容 strcpy(my_symbol->text, "123456789"); // 使用Zint库的函数生成条形码的位图 int err = ZBarcode_Encode_and_Buffer(my_symbol, my_symbol->text, 0, 0); // 将位图保存为图像文件或在控制台中显示 ZintBarcode_Save(my_symbol, "barcode.bmp"); // 释放内存 ZBarcode_Delete(my_symbol); return 0; } 以上代仅是一个简单的示例,实际使用时可能需要根据具体需求进行更改和完善。通过调整Zint库的参数和函数,我们可以生成不同类型和样式的条形码,如EAN-13、Code 39等。 总之,通过使用VC编程,并结合第三方库,我们可以实现生成一维条形码功能
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值