好吧,我认为它更像是“在哪里可以找到它”而不是一个真正的问题。
我正在使用zxing为我的系统构建QR码引擎,它的工作确实很酷,但是我需要进行一些自定义。
在https://www.qrcode-monkey.com/,我发现了一个QR Code构建器,其中包含一些可以供任何QR码阅读器读取的模板。
可以使用MatrixToImageConfig类更改颜色,但是我没有找到改变形状的方法。
有人知道这样做的图书馆吗?!
答案 0 :(得分:0)
此类用于更改二维码颜色。
public class QRCodeServiceImpl {
public static final int ON_COLOR = 0xFFFF9F37;
public static final int OFF_COLOR = 0xFF6638B6;
public byte[] buildQRCode(String data) throws WriterException, IOException {
Hashtable<EncodeHintType, Object> hintMap = new Hashtable<>();
hintMap.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
hintMap.put(EncodeHintType.MARGIN, 1);
hintMap.put(EncodeHintType.CHARACTER_SET, "UTF-8");
QRCodeWriter qrCodeWriter = new QRCodeWriter();
BitMatrix bitMatrix = qrCodeWriter.encode(data, BarcodeFormat.QR_CODE, 512, 512, hintMap);
ByteArrayOutputStream pngOutputStream = new ByteArrayOutputStream();
MatrixToImageWriter.writeToStream(bitMatrix, "PNG", pngOutputStream, getMatrixConfig());
byte[] fileData = pngOutputStream.toByteArray();
return fileData;
}
private MatrixToImageConfig getMatrixConfig() {
MatrixToImageConfig config = new MatrixToImageConfig(ON_COLOR, OFF_COLOR);
return config;
}
}