【itext学习之路】--4.给pdf增加文本水印和图片水印
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                【itext学习之路】--4.给pdf增加文本水印和图片水印
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                來源:【itext學習之路】-------(第四篇)給pdf增加文本水印和圖片水印_tomatocc的博客-CSDN博客_itext添加水印
一般而言,許多公司在做pdf之后,都會將公司的logo或者網址以水印的方式添加到pdf文件中。本篇文章,我們將介紹在制作pdf的時候,如何將水印加入到pdf中去。
這里要說明一點:水印是要放在pdf中的,因此在創建PdfContentByte對象之前,一定要先 document.newPage();。二者順序是不能反過來的,如果反過來的意思就是先畫水印,在創建一個pdf頁面,顯然不符合邏輯了。
package cn.tomtocc.pdf;import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException;import com.itextpdf.text.BaseColor; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.Element; import com.itextpdf.text.PageSize; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.BaseFont; import com.itextpdf.text.pdf.PdfContentByte; import com.itextpdf.text.pdf.PdfGState; import com.itextpdf.text.pdf.PdfWriter;public class pdfTest {public static void main(String[] args) throws FileNotFoundException,DocumentException {//實現A4紙頁面 并且橫向顯示(不設置則為縱向)Document document = new Document(PageSize.A4.rotate());PdfWriter pdfWriter = PdfWriter.getInstance(document,new FileOutputStream("d:/demo.pdf"));// 打開文檔document.open();// 創建第一頁(如果只有一頁的話,這一步可以省略)document.newPage();// 加入水印PdfContentByte waterMar = pdfWriter.getDirectContentUnder();// 開始設置水印waterMar.beginText();// 設置水印透明度PdfGState gs = new PdfGState();// 設置填充字體不透明度為0.4fgs.setFillOpacity(0.4f);try {// 設置水印字體參數及大小 (字體參數,字體編碼格式,是否將字體信息嵌入到pdf中(一般不需要嵌入),字體大小)waterMar.setFontAndSize(BaseFont.createFont(BaseFont.HELVETICA, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED), 60);// 設置透明度waterMar.setGState(gs);// 設置水印對齊方式 水印內容 X坐標 Y坐標 旋轉角度waterMar.showTextAligned(Element.ALIGN_RIGHT, "www.tomatocc.com" , 500, 430, 45);// 設置水印顏色waterMar.setColorFill(BaseColor.GRAY);//結束設置waterMar.endText();waterMar.stroke();} catch (IOException e) {e.printStackTrace();}finally {waterMar = null;gs = null;}// 加入文檔內容document.add(new Paragraph("my first pdf demo"));// 關閉文檔document.close();pdfWriter.close();} }然后我們打開我們的pdf,如下:
?
- 接下來,我們繼續操作“圖片水印”
 
然后我們打開文檔,就可以看到一個帶圖片水印的pdf了
- 到目前為止,關于pdf的簡單操作就介紹到這里,在下篇文章中,我們將要介紹印章水印。
 
?
總結
以上是生活随笔為你收集整理的【itext学习之路】--4.给pdf增加文本水印和图片水印的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 软件测试面试题linux,linux基础
 - 下一篇: oracle数据块调用存储过程,VC调用