goja-rapid/src/main/java/goja/rapid/qrcode/QRCode.java
public static BufferedImage toQRCode(String content, QRCodeFormat format) {
        if (format == null) {
            format = QRCodeFormat.NEW();
        }

        content = new String(content.getBytes(Charset.forName(format.getEncode())));
        BitMatrix matrix;
        try {
            matrix = new QRCodeWriter().encode(content,
                    BarcodeFormat.QR_CODE,
                    format.getSize(),
                    format.getSize(),
                    format.getHints());
        } catch (WriterException e) {
            throw new RuntimeException(e);
        }

        int width = matrix.getWidth();
        int height = matrix.getHeight();
        int fgColor = format.getForeGroundColor().getRGB();
        int bgColor = format.getBackGroundColor().getRGB();
        BufferedImage image = new BufferedImage(width,
                height,
                ColorSpace.TYPE_RGB);
        for (int x = 0; x < width; x++) {
            for (int y = 0; y < height; y++) {
                image.setRGB(x, y, matrix.get(x, y) ? fgColor : bgColor);
            }
        }
        return image;
    }
public static BufferedImage toQRCode(String content, QRCodeFormat format) {
        if (format == null) {
            format = QRCodeFormat.NEW();
        }

        content = new String(content.getBytes(Charset.forName(format.getEncode())));
        BitMatrix matrix;
        try {
            matrix = new QRCodeWriter().encode(content,
                    BarcodeFormat.QR_CODE,
                    format.getSize(),
                    format.getSize(),
                    format.getHints());
        } catch (WriterException e) {
            throw new RuntimeException(e);
        }

        int width = matrix.getWidth();
        int height = matrix.getHeight();
        int fgColor = format.getForeGroundColor().getRGB();
        int bgColor = format.getBackGroundColor().getRGB();
        BufferedImage image = new BufferedImage(width,
                height,
                ColorSpace.TYPE_RGB);
        for (int x = 0; x < width; x++) {
            for (int y = 0; y < height; y++) {
                image.setRGB(x, y, matrix.get(x, y) ? fgColor : bgColor);
            }
        }
        return image;
    }
public static BufferedImage toQRCode ( String content , QRCodeFormat format ) { if ( format == null ) { format = QRCodeFormat . NEW ( ) ; } content = new String ( content . getBytes ( Charset . forName ( format . getEncode ( ) ) ) ) ; BitMatrix matrix ; try { matrix = new QRCodeWriter ( ) . encode ( content , BarcodeFormat . QR_CODE , format . getSize ( ) , format . getSize ( ) , format . getHints ( ) ) ; } catch ( WriterException e ) { throw new RuntimeException ( e ) ; } int width = matrix . getWidth ( ) ; int height = matrix . getHeight ( ) ; int fgColor = format . getForeGroundColor ( ) . getRGB ( ) ; int bgColor = format . getBackGroundColor ( ) . getRGB ( ) ; BufferedImage image = new BufferedImage ( width , height , ColorSpace . TYPE_RGB ) ; for ( int x = 0 ; x < width ; x ++ ) { for ( int y = 0 ; y < height ; y ++ ) { image . setRGB ( x , y , matrix . get ( x , y ) ? fgColor : bgColor ) ; } } return image ; }
使用指定的「QRCode生成器格式」，把指定的内容生成为一个 QRCode 的图像对象。

@param content 所需生成 QRCode 的内容
@return QRCode 的图像对象
使用指定的「QRCode生成器格式」，把指定的内容生成为一个 QRCode 的图像对象。