Java中基于maven实现zxing二维码功能

时间:2022-09-07 14:09:38

maven所需jar

?
1
2
3
4
5
6
7
8
9
10
<dependency>
  <groupId>com.google.zxing</groupId>
  <artifactId>core</artifactId>
  <version>3.0.0</version>
  </dependency>
  <dependency>
  <groupId>com.google.zxing</groupId>
  <artifactId>javase</artifactId>
  <version>3.0.0</version> 
  </dependency>

生成二维码

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
public static void main(String[] args) throws IOException {
String text="www.baidu.com";
int width=100;
int height=100;
String format="png";
Hashtable hints=new Hashtable();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.M);
hints.put(EncodeHintType.MARGIN, 2);
try {
BitMatrix bitMatrix=new MultiFormatWriter().encode(text, BarcodeFormat.QR_CODE, width, height,hints);
 Path file=new Java.io.File("D:/new.png").toPath();
MatrixToImageWriter.writeToPath(bitMatrix, format, file);
} catch (WriterException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
解析二维码:
public static void main(String[] args) throws NotFoundException {
MultiFormatReader formatReader=new MultiFormatReader();
File file =new File("D:/new.png");
BufferedImage image=null;
try {
image = ImageIO.read(file);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BinaryBitmap binaryBitmap =new BinaryBitmap(new HybridBinarizer(new BufferedImageLuminanceSource(image)));
Hashtable hints=new Hashtable();
hints.put(EncodeHintType.CHARACTER_SET, "utf-8");
Result result=formatReader.decode(binaryBitmap,hints);
System.err.println("解析结果:"+result.toString());
System.out.println(result.getBarcodeFormat());
System.out.println(result.getText());
}

以上所述是小编给大家介绍的Java中基于maven实现zxing二维码功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

原文链接:http://blog.csdn.net/zwx886688/article/details/54846104