用zxing生成条形码

ZXing库为生成条形码提供了便利。本文通过实例展示如何生成Code 128条形码,并引用了一个展示详细编码过程的例子。
摘要由CSDN通过智能技术生成

ZXing还是十分强大的,给我们写代码省去了不少事情。先来看看他支持的编码:

1D product 1D industrial 2D
UPC-A Code 39 QR Code
UPC-E Code 93 Data Matrix
EAN-8 Code 128 Aztec (beta)
EAN-13 Codabar PDF 417 (beta)
ITF MaxiCode
RSS-14
RSS-Expanded

言归正传,抓几个例子来看一看如何生成Code 128的条形码。

/**
 * A method for generating a barcode of some text
 *
 * @param string        the string to be converted to barcode, will be a bid in this case
 * @return              an image representing the barcode to be drawn on a ballot
 */
public static BufferedImage getBarcode(String string){
    /* Try to encode the string as a barcode */
    try {
        Code128Writer writer = new Code128Writer();
        BitMatrix bar = writer.encode(string, BarcodeFormat.CODE_128, 264, 48, new HashMap<EncodeHintType,Object>());
        return MatrixT
以下是使用zxing生成条形码并展示条形码号的Java代码示例: ```java import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import java.util.HashMap; import java.util.Map; import javax.imageio.ImageIO; import com.google.zxing.BarcodeFormat; import com.google.zxing.EncodeHintType; import com.google.zxing.WriterException; import com.google.zxing.common.BitMatrix; import com.google.zxing.oned.Code128Writer; import com.google.zxing.client.j2se.MatrixToImageWriter; public class BarcodeGenerator { public static void main(String[] args) { String barcodeNumber = "1234567890"; // 条形码号 String filePath = "barcode.png"; // 保存条形码的文件路径 try { Map<EncodeHintType, Object> hints = new HashMap<>(); hints.put(EncodeHintType.CHARACTER_SET, "UTF-8"); // 字符编码 BitMatrix bitMatrix = new Code128Writer().encode(barcodeNumber, BarcodeFormat.CODE_128, 300, 150, hints); BufferedImage image = MatrixToImageWriter.toBufferedImage(bitMatrix); File file = new File(filePath); ImageIO.write(image, "png", file); System.out.println("条形码生成条形码号为:" + barcodeNumber); } catch (WriterException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } } ``` 该代码使用Code128Writer生成CODE_128格式的条形码,设置了字符编码为UTF-8,生成了一个300x150像素的条形码图像,并将图像保存到文件中。在生成完成后,会在控制台输出条形码号。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值