java 二维码生成(vcard)

1. maven 依赖
  1. <dependency>
  2. <groupId>com.googlecode.ez-vcard</groupId>
  3. <artifactId>ez-vcard</artifactId>
  4. <version>0.10.1</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>com.google.zxing</groupId>
  8. <artifactId>javase</artifactId>
  9. <version>3.3.0</version>
  10. </dependency>
  11. <dependency>
  12. <groupId>com.google.zxing</groupId>
  13. <artifactId>core</artifactId>
  14. <version>3.3.0</version>
  15. </dependency>
 
2. 代码编写
 
生成
  1. publicstaticvoid qrCode()throwsWriterException,IOException{
  2. String filePath ="D://";
  3. String fileName ="zxing.png";
  4. String content=handlerEvent();
  5. int width =200;// 图像宽度
  6. int height =200;// 图像高度
  7. String format ="png";// 图像类型
  8. Map<EncodeHintType,Object> hints =newHashMap<EncodeHintType,Object>();
  9. hints.put(EncodeHintType.CHARACTER_SET,"UTF-8");
  10. BitMatrix bitMatrix =newMultiFormatWriter().encode(content,
  11. BarcodeFormat.QR_CODE, width, height, hints);// 生成矩阵
  12. Path path =FileSystems.getDefault().getPath(filePath, fileName);
  13. MatrixToImageWriter.toBufferedImage(bitMatrix);
  14. MatrixToImageWriter.writeToPath(bitMatrix, format, path);// 输出图像
  15. }
vcard 生成
  1. publicstaticString handlerEvent(){
  2. VCard card =newVCard();
  3. card.addEmail(newEmail("1141591465@qq.com"));
  4. Address orgial =newAddress();
  5. orgial.addParameter("name","dalong");
  6. card.addAddress(newAddress(orgial));
  7. card.addExpertise("软件开发");
  8. Nickname nickname =newNickname();
  9. nickname.addParameter("姓名","荣锋亮");
  10. card.addNickname(newNickname(nickname));
  11. card.setNickname("大龙");
  12. card.setCategories("北京");
  13. card.setMailer("男");
  14. card.setGeo(116.419791,39.936404);
  15. card.setOrganization("北京公司");
  16. card.setProductId("beijing");
  17. card.setClassification("开发");
  18. Agent agent =newAgent("beijing");
  19. card.setAgent(agent);
  20. card.addExtendedProperty("TEL","XXXXXXXXXXXXX");
  21. Gson json =newGson();
  22. return card.write();
  23. }
3. 结果

 4. 微信扫描结果
 
 
 





posted on   荣锋亮  阅读(1056)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)

导航

< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5
点击右上角即可分享
微信分享提示