Java:pdf文件中添加图片

利用com.itextpdf.text包中的类,可以轻松实现pdf文件与图片的合成。比如要在pdf文件中添加水印、签名、盖章。下面以一个简单的main方法实现:

public static void main(String[] args) throws Exception{
        //pdf文件存放在E盘
        File file = new File("E:\\test.pdf");
        //合成后的文件
        FileOutputStream outputStream = new FileOutputStream("E:\\test_aa.pdf");
        PdfReader reader = new PdfReader(new FileInputStream(file));
        PdfStamper stamper = new PdfStamper(reader, outputStream);
        //将签名图片放在pdf文件的第4页
        PdfContentByte over = stamper.getOverContent(4);
        //签名图片
        Image contractSealImg = Image.getInstance("E:\\aa.jpg");
        over.saveState();
        PdfGState pdfGState = new PdfGState();
        pdfGState.setFillOpacity(0.8F);  //给图片设置透明度
        over.setGState(pdfGState);
        contractSealImg.setAbsolutePosition(75,320);  //设置图片位置
        contractSealImg.scaleAbsolute(80, 60);  //设置图片大小
        over.addImage(contractSealImg);  //将图片添加到pdf文件
        over.restoreState();
        stamper.setFormFlattening(true);
        stamper.close();
        reader.close();
        outputStream.close();
    }

此处签名图片背景为白色,还未找到使背景透明化的方法,故将整个签名图片进行透明化设置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值