zxing 生成条形码并展示条形码号
时间: 2023-08-25 20:05:40 浏览: 53
以下是使用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像素的条形码图像,并将图像保存到文件中。在生成完成后,会在控制台输出条形码号。