现在在做一个二维码项目,用的是barcode4j开源码,可是barcode4j不支持中文,上网搜说需要下载barcode4j中文包,一直没下到。不知道有没有谁遇到这种情况,如何解决的?希望大家多多帮助,非常感谢!程序运行代码如下:
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;import org.krysalis.barcode4j.impl.PDF417.PDF417Bean;
import org.krysalis.barcode4j.output.bitmap.BitmapCanvasProvider;
import org.krysalis.barcode4j.tools.UnitConv;public class datamatrix {    public static void main(String[] args) {
        try {
            //Create the barcode bean
            PDF417Bean bean = new PDF417Bean();
            
            final int dpi = 150;
            
            //Configure the barcode generator
            bean.setModuleWidth(UnitConv.in2mm(1.0f / dpi)); //makes the narrow bar 
                                                             //width exactly one pixel
            bean.setWideFactor(3);
            bean.doQuietZone(false);
            
            //Open output file
            File outputFile = new File("out.jpg");
            OutputStream out = new FileOutputStream(outputFile);
            try {
                //Set up the canvas provider for monochrome JPEG output 
                BitmapCanvasProvider canvas = new BitmapCanvasProvider(
                        out, "image/jpeg", dpi, BufferedImage.TYPE_BYTE_BINARY, false, 0);
            
                //Generate the barcode
                bean.generateBarcode(canvas, "陈沉浮鼓风机");
            
                //Signal end of generation
                canvas.finish();
            } finally {
                out.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
运行错误为:
java.lang.IllegalArgumentException: Invalid character: 陈
at org.krysalis.barcode4j.impl.code39.Code39LogicImpl.generateBarcodeLogic(Code39LogicImpl.java:333)
at org.krysalis.barcode4j.impl.code39.Code39Bean.generateBarcode(Code39Bean.java:195)
at com.cdz.barcode4j.datamatrix.main(datamatrix.java:57)