操作PDF文档时,我们通常会需要添加、删除或旋转一些PDF页面。本文就将通过使用Java程序来详细介绍如何在PDF文档中添加、删除和旋转页面。
使用工具:Free Spire.PDF for Java(免费版)
Jar文件获取及导入:
方法1:通过E-iceblue中文官网下载获取jar包。解压后将lib文件夹下的Spire.Pdf.jar文件导入Java程序。(如下图)
![9beba908af689d90eaa0b00dacb4538f.png](https://i-blog.csdnimg.cn/blog_migrate/8495c62aa97ce8bac9dea1fc289cb7c7.jpeg)
方法2:通过maven仓库安装导入。具体安装详解参见E-iceblue中文官网。
【示例1】添加新页面
import com.spire.pdf.*;import java.awt.*;import com.spire.pdf.graphics.*;import java.awt.geom.Rectangle2D;public class AddPage { public static void main(String[] args) { //创建PdfDocument对象并加载示例文档 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("C:甥敳獲Test1DesktopSample.pdf"); //添加新页面 PdfPageBase page = pdf.getPages().add(); //创建TrueType字体对象 PdfTrueTypeFont font= new PdfTrueTypeFont(new Font("Arial Unicode MS",Font.PLAIN,14),true); //设置字体格式、大小 PdfRGBColor blue = new PdfRGBColor(); blue.setB((byte) 255); PdfSolidBrush brush = new PdfSolidBrush(blue); Rectangle2D.Float rctg1 = new Rectangle2D.Float(); rctg1.setRect(0,70,page.getCanvas().getClientSize().getWidth() / 2,100); //绘制文字 page.getCanvas().drawString("新添加页面", font, brush, rctg1); //保存文档 pdf.saveToFile("output/添加页面.pdf"); }}
添加效果:
![dbc943052332d784ce938c0b05607942.png](https://i-blog.csdnimg.cn/blog_migrate/8f82437e2d43ad5b6f6c75f242cf5cec.jpeg)
【示例2】删除页面
import com.spire.pdf.*;public class DeletePage { public static void main(String[] args) { //创建PdfDocument对象并加载示例文档 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("C:甥敳獲Test1Desktop添加页面.pdf"); //删除第二页 pdf.getPages().removeAt(1); //保存文档 pdf.saveToFile("output/删除页面.pdf"); }}
删除效果:
![1ea491d77af06a7e00f11364114906c3.png](https://i-blog.csdnimg.cn/blog_migrate/7ec111fb2016425481854336f5c73160.jpeg)
【示例3】旋转页面
import com.spire.pdf.PdfDocument;import com.spire.pdf.PdfPageBase;import com.spire.pdf.PdfPageRotateAngle;public class RotatePage { public static void main(String[] args) { //加载PDF文档 PdfDocument pdf = new PdfDocument(); pdf.loadFromFile("C:甥敳獲Test1DesktopSample.pdf"); //获取第一页 PdfPageBase page = pdf.getPages().get(0); //获取第一页当前的旋转角度 int rotateAngle = page.getRotation().getValue(); //在当前旋转角度的基础上,将第一页顺时针旋转90度(可选0/90/180/270度) rotateAngle += PdfPageRotateAngle.Rotate_Angle_90.getValue(); page.setRotation((PdfPageRotateAngle.fromValue(rotateAngle))); //保存文档 pdf.saveToFile("output/Rotated.pdf"); }}
旋转效果:
![4d8bde9f1287b71edd2801c4f7bed079.png](https://i-blog.csdnimg.cn/blog_migrate/e2541ace545902f2f4f2f0700e505a38.jpeg)
(本文完)