记一次PDFRenderer使用renderImage方法报错java.lang.IndexOutOfBoundsException解决方法

估计大家的代码是这样写的


PDDocument document = PDDocument.load(bytes);

			PDFRenderer render = new PDFRenderer(document);
			int pages = document.getNumberOfPages();
			if (pageNum > 0 && pageNum <= pages) {
				BufferedImage image = render.renderImage(pageNum , 1.5f);
				ImageIO.write(image, formatName, out);

然后报错情况如下:

在这里插入图片描述
相信大家都没找到使用手册,网上的一些文章都是我上面这种写法,然而,当我一个个异常去看的时候,终于发现为什么数据越界了,我传入的是pageNum 是1,但是为什么显示会说越界显示2呢?

贴出源码看下,你就知道了
在这里插入图片描述
在这里插入图片描述
原来在我们看不到的地方,他会自动帮我们的页数加一,这就是为什么你的PDF只有一页的时候会报错的原因。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值