iText5 PDF문서에 워터마크 넣기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | manipulatePdf("PDF만든경로", "워터마크가 포함된 PDF를 저장할 ", watermark); public void manipulatePdf(String src, String dest, String imgsrc) throws IOException, DocumentException { PdfReader reader = new PdfReader(src); int n = reader.getNumberOfPages(); PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(dest)); // image watermark Image img = Image.getInstance(imgsrc); float w = img.getScaledWidth(); float h = img.getScaledHeight(); // transparency PdfGState gs1 = new PdfGState(); gs1.setFillOpacity(0.5f); // properties PdfContentByte over; Rectangle pagesize; float x, y; // loop over every page for (int i = 1; i <= n; i++) { pagesize = reader.getPageSizeWithRotation(i); x = (pagesize.getLeft() + pagesize.getRight()) / 2; y = (pagesize.getTop() + pagesize.getBottom()) / 2; over = stamper.getOverContent(i); over.saveState(); over.setGState(gs1); over.addImage(img, w, 0, 0, h, x - (w / 2), y - (h / 2)); over.restoreState(); } stamper.close(); reader.close(); } | cs |
PDF를 작성 하면서 워터마크를 넣고싶었지만,
그러면 표의 배경색에 워터마크가 가려지는 일이(?) 생겨서, PDF생성 후 다시 워터마크를 넣는 작업을 진행함
*경로가 두 개인 이유는, 작성된 PDF(String src)가 열고 있어서, 새로운 경로를 정해줌.
참고사이트:
http://developers.itextpdf.com/examples/itext-action-second-edition/chapter-6
'웹' 카테고리의 다른 글
jqGrid 캡션(제목) 선택 시 접기/펼치기 (0) | 2016.09.30 |
---|---|
div contenteditable=true에 데이트피커 넣기 (0) | 2016.09.05 |
jqGrid Cell Edit 벗어나기 (0) | 2016.09.01 |
jqGrid옵션 정리, jqGrid Options 中 (0) | 2016.09.01 |
PDF파일 보여주기->출력 (4) | 2016.07.29 |