Java添加、隐藏/显示、删除PDF图层-创新互联

本文介绍操作PDF图层的方法。可分为添加图层(包括添加线条、形状、字符串、图片等图层)、隐藏或显示图层、删除图层等。具体可参考如下Java代码示例。

十余年的越城网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都营销网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整越城建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“越城网站设计”,“越城网站推广”以来,每个客户项目都认真落实执行。

工具:Free Spire.PDF for Java (免费版)

Jar包下载和导入:可通过 官 网下载,下载后,解压,将lib文件夹下的Sprie.Pdf.jar导入Java程序;或者可通过 Maven 仓库下载导入。如下导入效果:

Java 添加、隐藏/显示、删除PDF图层

Java示例1:添加图层

 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();
     }
 
 }

图层添加效果:

Java 添加、隐藏/显示、删除PDF图层

Java示例2:隐藏/显示图层

 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();
     }
 }

图层隐藏/显示效果:

Java 添加、隐藏/显示、删除PDF图层

Java示例3:删除图层

 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();
     }
 }

图层删除效果:

Java 添加、隐藏/显示、删除PDF图层

(本文完)


本文名称:Java添加、隐藏/显示、删除PDF图层-创新互联
分享网址:http://ybzwz.com/article/dsjcoc.html