iText中给pdf内容添加水印

  1. /**
  2. *给pdf文件添加水印
  3. *@paramInPdfFile要加水印的原pdf文件路径
  4. *@paramoutPdfFile加了水印后要输出的路径
  5. *@parammarkImagePath水印图片路径
  6. *@parampageSize原pdf文件的总页数
  7. *@throwsException
  8. */
  9. publicstaticvoidaddPdfMark(StringInPdfFile,StringoutPdfFile,StringmarkImagePath,intpageSize)throwsException{
  10. PdfReaderreader=newPdfReader(InPdfFile,"PDF".getBytes());
  11. PdfStamperstamp=newPdfStamper(reader,newFileOutputStream(outPdfFile));
  12. Imageimg=Image.getInstance(markImagePath);//插入水印
  13. img.setAbsolutePosition(150,100);
  14. for(inti=1;i<=pageSize;i++){
  15. PdfContentByteunder=stamp.getUnderContent(i);
  16. under.addImage(img);
  17. }
  18. stamp.close();//关闭
  19. Filetempfile=newFile(InPdfFile);
  20. if(tempfile.exists()){
  21. tempfile.delete();
  22. }
  23. }
 /**
 * 给pdf文件添加水印
 * @param InPdfFile 要加水印的原pdf文件路径
 * @param outPdfFile 加了水印后要输出的路径
 * @param markImagePath 水印图片路径
 * @param pageSize 原pdf文件的总页数
 * @throws Exception
 */
 public static void addPdfMark(String InPdfFile, String outPdfFile, String markImagePath, int pageSize) throws Exception {
 
 PdfReader reader = new PdfReader(InPdfFile, "PDF".getBytes());
 
 PdfStamper stamp = new PdfStamper(reader, new FileOutputStream(outPdfFile));
 
 Image img = Image.getInstance(markImagePath);// 插入水印 

 img.setAbsolutePosition(150, 100);
 
 for(int i = 1; i <= pageSize; i++) {
 
 PdfContentByte under = stamp.getUnderContent(i);
 
 under.addImage(img);
 
 }
 
 stamp.close();// 关闭 
 
 File tempfile = new File(InPdfFile);
 
 if(tempfile.exists()) {
 
 tempfile.delete();
 }
 
 }
转自:http://blog.youkuaiyun.com/huiwenjie168/article/details/7616983
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值