- 用 java.awt.image.BufferedImage 繪製不規則圖形
//產生一個200x200的BufferedImage BufferedImage img = new BufferedImage(200, 200, BufferedImage.TYPE_BYTE_GRAY); //產生一個正三角形與倒三角形,組合成一個六芒星的形狀 int[] aX = {100, 0, 200, 100}; int[] aY = {0, 150, 150, 0}; int[] bX = {100, 0, 200, 100}; int[] bY = {200, 50, 50, 200}; img.getGraphics().fillPolygon(aX, aY, 4); img.getGraphics().fillPolygon(bX, bY, 4); //強制將圖形以黑白兩色呈現, 這樣就可以將不規則圖形成為遮罩圖 Image mask = Image.getInstance(img, null, true); //將繪製的圖形做一次Invert, 不然會變成顯示六芒星以外的圖 mask.setInverted(true); mask.makeMask(); //讀取欲顯示的圖片 Image image = Image.getInstance("c:\\image.jpg"); //設定該圖片的遮罩圖 image.setImageMask(mask); //設定該圖片在pdf版面中的位置 image.setAbsolutePosition(100, 100); //最後透過PdfContentByte的assImage將圖片加入即可
2007/06/15
[Java] iText遮罩圖設計
訂閱:
文章 (Atom)