Java 添加和删除PDF图层的示例代码
时间:2021-08-09 08:51:22|栏目:JAVA代码|点击: 次
在PDF文档中,图层可以使部分内容选择性地被隐藏或显示。通过添加图层,我们可以将文本、图片、表格等元素精确定位于页面指定位置,并可将这些元素进行叠放、组合形成页面的最终效果。本文将介绍如何使用Spire.PDF for Java来添加和删除PDF图层。
使用工具: Free Spire.PDF for Java (免费版)
Jar文件获取及导入:
方法1:通过官方网站 下载获取jar包。解压后将lib文件夹下的Spire.Pdf.jar文件导入Java程序。(如下图)

方法2:通过maven仓库安装导入。具体安装详解参见此网页 。
【示例1】添加图层
com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.graphics.PdfBrushes;
import com.spire.pdf.graphics.PdfCanvas;
import com.spire.pdf.graphics.PdfPen;
import com.spire.pdf.graphics.layer.PdfLayer;
import java.awt.geom.Point2D;
public class AddLayers {
public static void main(String[] args) {
//创建PDF文档
PdfDocument pdf = new PdfDocument();
//添加一页
PdfPageBase page = pdf.getPages().add();
//添加3个线条图层到PDF文档
PdfLayer layer = pdf.getLayers().addLayer("red line1");
PdfCanvas canvas1 = layer.createGraphics(pdf.getPages().get(0).getCanvas());
canvas1.drawLine(new PdfPen(PdfBrushes.getRed(), 1), new Point2D.Float(50, 350), new Point2D.Float(200, 350));
layer = pdf.getLayers().addLayer("blue line1");
PdfCanvas canvas2 = layer.createGraphics(pdf.getPages().get(0).getCanvas());
canvas2.drawLine(new PdfPen(PdfBrushes.getBlue(), 1), new Point2D.Float(50, 450), new Point2D.Float(200, 450));
layer = pdf.getLayers().addLayer("green line1");
PdfCanvas canvas3 = layer.createGraphics(pdf.getPages().get(0).getCanvas());
canvas3.drawLine(new PdfPen(PdfBrushes.getGreen(), 1), new Point2D.Float(50,550), new Point2D.Float(200, 550));
//保存结果文档
pdf.saveToFile("output/addLayers.pdf");
pdf.close();
}
}
图层添加效果:

【示例2】删除图层
com.spire.pdf.PdfDocument;
public class DeleteLayers {
public static void main(String[] args) {
//加载PDF文档
PdfDocument pdf = new PdfDocument();
pdf.loadFromFile("D:\\Desktop\\addLayers.pdf");
//删除名为“red line1”的图层
pdf.getLayers().removeLayer("red line1");
//保存结果文档
pdf.saveToFile("output/deleteLayer.pdf");
pdf.close();
}
}
图层删除效果:

总结
栏 目:JAVA代码
下一篇:java使用EditText控件时不自动弹出输入法的方法
本文标题:Java 添加和删除PDF图层的示例代码
本文地址:http://www.codeinn.net/misctech/165456.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




