生成二维码图片 插入 pdf
com.itextpdf.text.Image
引用包
获取Image的两种常用方式:
1、本地图片插入如 :
String imageUrl = "d://123.png";
Image image =Image.getInstance(imageUrl);
2、链接图片地址插入:
String imgURL = "https://avatar.csdnimg.cn/3/1/7/1_qq_27292113.jpg"
Image image = Image.getInstance(new URL(imgURL))
部分业务代码:
/*** @param image* @param align_v 垂直 ALIGN_LEFT = 0; ALIGN_CENTER = 1;ALIGN_RIGHT = 2; ALIGN_TOP = 4;ALIGN_MIDDLE = 5;ALIGN_BOTTOM = 6;* @param align_h 水平 ALIGN_LEFT = 0 ALIGN_CENTER = 1; ALIGN_RIGHT = 2;* @param colspan 跨列* @param rowspan 跨行* @return*/public PdfPCell createCellNotBorder(Image image, int align, int colspan, int rowspan) {PdfPCell cell = new PdfPCell();cell.setVerticalAlignment(Element.ALIGN_MIDDLE);cell.setHorizontalAlignment(align);if (colspan !=0) {cell.setColspan(colspan);}if (rowspan !=0) {cell.setRowspan(rowspan);}cell.setBorder(0);cell.setFixedHeight(rowspan * 25.0F);cell.setImage(image);return cell;}/***生成图片二维码* @param url 存放地址* @param content 二维码的内容* @param width* @param height* @return* @throws Exception*/public String code(String url, String content, int width, int height)throws Exception {if (StringUtils.isEmpty(content)) {return "";}// 调用工具类,生成二维码BufferedImage bufferedImage = creatCode(content, width, height); // 200为图片高度和宽度String url1 = url +"/"+ content + ".png";File imageFile = new File(url1);ImageIO.write(bufferedImage, "png", imageFile);return url1;}public BufferedImage creatCode(String contents, int width, int height) {BufferedImage image = null;Hashtable<EncodeHintType, java.io.Serializable> hints = new Hashtable<>();hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H);hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); //设置字符编码hints.put(EncodeHintType.MARGIN, 1); //二维码空白区域,最小为0也有白边,只是很小,最小是6像素左右try {BitMatrix bitMatrix = new MultiFormatWriter().encode(contents, BarcodeFormat.QR_CODE, width, height, hints); // 1、读取文件转换为字节数组image = MatrixToImageWriter.toBufferedImage(bitMatrix);//转换成png格式的IO流} catch (Exception e) {e.printStackTrace();}return image;}
maven 引用包:
<!-- https://mvnrepository.com/artifact/org.apache.pdfbox/pdfbox --><dependency><groupId>org.apache.pdfbox</groupId><artifactId>pdfbox</artifactId><version>2.0.21</version></dependency><dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.13</version></dependency><dependency><groupId>com.itextpdf</groupId><artifactId>itext-asian</artifactId><version>5.2.0</version></dependency><!-- 二维码 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.3.0</version></dependency><dependency><groupId>com.google.zxing</groupId><artifactId>javase</artifactId><version>3.3.0</version></dependency>
生成二维码图片 插入 pdf相关推荐
- java完整的利用itext5制作pdf、二维码图片插入pdf,并解析pdf中的二维码信息
利用itext5.zxing.QRCore制作pdf.二维码图片插入pdf,并解析pdf中的二维码信息,手机可以实现扫描获取二维码的信息,并进行验证你的解析是否正确. 先是生成二维码图片并插入pdf中 ...
- js生成二维码以及插入图片
js生成二维码以及插入图片 先根据qrcode官网demo,不同属性值的变化,二维码的变化效果:https://larsjung.de/jquery-qrcode/latest/demo/ 进入dem ...
- 使用Java生成二维码图片(亲测)
下面我来分享两种生成二维码图片的方法. 第一种,填入你扫描二维码要跳转的网址直接生成二维码 第一步:导入相关的包 1 <dependency> 2 <groupId>com.g ...
- 使用Java生成二维码图片
下面我来分享两种生成二维码图片的方法. 第一种,填入你扫描二维码要跳转的网址直接生成二维码 第一步:导入相关的包 1 <dependency> 2 <groupId>com.g ...
- libqrencode生成二维码图片的问题
libqrencode在生成编码后,如何生成二维码图片.可以通过libpng来生成二维码图片文件.但在在网络通信中,先生成二维码图片文件,再读取文件数据,发送出去,这是一种可行的方法. 但是有没有一种 ...
- C# 利用QRCode生成二维码图片
网上生成二维码的组件是真多,可是真正好用的,并且生成速度很快的没几个,QRCode就是我在众多中找到的,它的生成速度快.但是网上关于它的使用说明,真的太少了,大都是千篇一律的复制粘贴.这是本要用它做了 ...
- 基于ZXing Android实现生成二维码图片和相机扫描二维码图片即时解码的功能
NextQRCode ZXing开源库的精简版 **基于ZXing Android实现生成二维码图片和相机扫描二维码图片即时解码的功能 原文博客 附源码下载地址** 与原ZXingMini项目对比 N ...
- PHP根据指定url生成二维码图片
一.composer安装 http://packagist.p2hp.com/packages/codeitnowin/barcode 二.使用 调用generateQrCode()方法即可实现生成二 ...
- springboot2整合二维码 生成二维码图片及输出web端及打印
step1 导包 <!-- 二维码 --><dependency><groupId>com.google.zxing</groupId><arti ...
最新文章
- python rank_PageRank算法原理与Python实现
- 超详细 Spring Boot 知识清单
- ibatis mysql sqlmapconfig_iBATIS sqlMapConfig配置详解
- 奖学金设计mysql_基于JAVA的奖学金评定系统设计与实现(MySQL)(含录像)
- Mybatis中trim的使用
- Asp.net 编码函数
- 链表——【线性表(二)】
- java cookie共享_cookie共享
- 自己对行业未来发展的认知_我们正在建立的认知未来
- [Java进阶] Swing两万字大总结一(超详细教程,这不得收藏一波)
- ht for web(图扑)加载模型
- 13.0、veu-路由嵌套
- html价格划掉的样式,用css布局价格划线_价钱中划线_价格中间贯穿删除线效果样式布局...
- fastjson之@JSONField注解的几个的使用详细示范
- [VT虚拟化驱动]安装DPC回调检测CPU对VT的支持
- 2.数据类型--数值类型
- JVM优化:决定Java堆的大小以及内存占用
- 以社交活动的方式做计划-乐高公司的规模化敏捷
- 整站优化提升排名工具_百度快速排名教程【常见问题】
- HTTP状态码206和416