您好,登錄后才能下訂單哦!
本文介紹操作PDF圖層的方法。可分為添加圖層(包括添加線條、形狀、字符串、圖片等圖層)、隱藏或顯示圖層、刪除圖層等。具體可參考如下Java代碼示例。
工具:Free Spire.PDF for Java (免費版)
Jar包下載和導入:可通過 官 網下載,下載后,解壓,將lib文件夾下的Sprie.Pdf.jar導入Java程序;或者可通過 Maven 倉庫下載導入。如下導入效果:
import com.spire.pdf.*; import com.spire.pdf.graphics.*; import com.spire.pdf.graphics.PdfPen; import com.spire.pdf.graphics.layer.PdfLayer; import java.awt.*; import java.awt.geom.Point2D; public class Addlayer { public static void main(String[]args){ //新建一個PDF文檔,并添加一頁 PdfDocument pdf = new PdfDocument(); pdf.getPages().add(); //添加圖層1為直線 PdfLayer layer1 = pdf.getLayers().addLayer("線條");//添加圖層并指定圖層名稱 PdfCanvas canvas1 = layer1.createGraphics(pdf.getPages().get(0).getCanvas()); canvas1.drawLine(new PdfPen(PdfBrushes.getRed(), 2.5), new Point2D.Float(0, 0), new Point2D.Float(150, 0));//繪制線條圖層(指定直線首尾兩點坐標,并應用畫刷) //創建圖層2為形狀 PdfLayer layer2 = pdf.getLayers().addLayer("橢圓");//添加圖層并指定圖層名稱 PdfCanvas canvas2 = layer2.createGraphics(pdf.getPages().get(0).getCanvas()); PdfPen pen = new PdfPen( new PdfRGBColor(Color.black),2.5f);//創建畫筆(指定畫筆顏色、粗細) PdfBrush brush2 = new PdfSolidBrush(new PdfRGBColor(Color.PINK));//創建畫刷1(設置畫刷顏色為:粉色) canvas2.drawEllipse(pen, brush2, 65, 50, 80, 80);//繪制形狀圖層(繪制圓形到指定頁面位置,并應用畫筆、畫刷) //創建圖層3為文本字符串 PdfLayer layer3 = pdf.getLayers().addLayer("字符串");//添加圖層并指定圖層名稱 PdfCanvas canvas3 = layer3.createGraphics(pdf.getPages().get(0).getCanvas()); PdfTrueTypeFont font1= new PdfTrueTypeFont(new Font("Arial Unicode MS",Font.PLAIN,14),true);//創建字體 PdfBrush brush3 = new PdfSolidBrush(new PdfRGBColor(Color.BLUE));//創建畫刷2(設置畫刷顏色為:藍色) canvas3.drawString("String String String", font1, brush3, 100, 150);//繪制字符串圖層(指定字符串到指定頁面位置,并應用字體、畫刷) //創建圖層4為圖片 PdfLayer layer4 = pdf.getLayers().addLayer("圖片");//添加圖層并指定圖層名稱 PdfCanvas canvas4 = layer4.createGraphics(pdf.getPages().get(0).getCanvas()); canvas4.drawImage(PdfImage.fromFile("tp.png"), 30, 190, 150, 135);//繪制圖片圖層(加載圖片,繪制到指定頁面位置并指定圖片大小)*/ //保存文檔 pdf.saveToFile("Addlayers.pdf",FileFormat.PDF); pdf.dispose(); } }
圖層添加效果:
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; import com.spire.pdf.graphics.layer.PdfVisibility; public class HideOrShowLayer { public static void main(String[] args) { //加載文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("Addlayers.pdf"); pdf.getLayers().get(0).setVisibility(PdfVisibility.Off);//設置圖層隱藏 //pdf.getLayers().get(2).setVisibility(PdfVisibility.On);//設置圖層顯示 //保存文檔 pdf.saveToFile("HideOrShowLayer.pdf", FileFormat.PDF); pdf.dispose(); } }
圖層隱藏/顯示效果:
import com.spire.pdf.*; public class RemoveLayer { public static void main(String[] args) { //加載文檔 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("Addlayers.pdf"); //根據圖層名稱索引,刪除圖層 pdf.getLayers().removeLayer("字符串"); //保存文檔 pdf.saveToFile("RemoveLayer.pdf",FileFormat.PDF); pdf.dispose(); } }
圖層刪除效果:
(本文完)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。