当一个 powerpoint 演示文稿被转换为 pdf 时,它的文档布局和格式是固定的。接收者可以在没有安装微软 powerpoint 的情况下查看转换后的文档,但他们不能轻易地修改它。在本文中,我们将演示如何使用 spire.presentation for java 库将 powerpoint 演示文稿转换为 pdf 以及实现各种转换效果。
- 将整个 powerpoint 转换为 pdf
- 将 powerpoint 的特定幻灯片转换为 pdf
- 将 powerpoint 转换为 pdf/a
- 将 powerpoint 转换为受密码保护的 pdf
- 将 powerpoint 转换为有权限限制的 pdf
- 将 powerpoint 转换为 pdf 时设置每页中幻灯片数量
- 将 powerpoint 转换为自定义页面尺寸的 pdf
安装 spire.presentation for java
首先,您需要在 java 程序中添加 spire.presentation.jar 文件作为一个依赖项。您可以从这个链接下载 jar 文件。如果您使用 maven,则可以通过在 pom.xml 文件中添加以下代码轻松导入该 jar 文件。
com.e-iceblue
e-iceblue
https://repo.e-iceblue.cn/repository/maven-public/
e-iceblue
spire.presentation
9.7.4
将整个 powerpoint 转换为 pdf
直接将 powerpoint 文档转换为 pdf 时,可以先使用 presentation.loadfromfile() 方法加载文档,然后使用 presentation.savetofile() 方法将其保存为 pdf 文件。详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.fileformat;
import com.spire.presentation.presentation;
public class convertpowerpointtopdf {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于操作powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件到presentation对象中
ppt.loadfromfile("sample.pptx");
// 将加载后的powerpoint演示文稿保存为pdf格式的文件,文件名为"topdf1.pdf"
ppt.savetofile("topdf1.pdf", fileformat.pdf);
}
}
将 powerpoint 的特定幻灯片转换为 pdf
首先,使用 presentation.getslides().get() 方法获取到特定的幻灯片,然后使用 islide.savetofile() 方法将该幻灯片保存为 pdf,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过索引使用 presentation.getslides().get(slideindex) 方法获取想要的幻灯片。
- 使用 islide.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.fileformat;
import com.spire.presentation.islide;
import com.spire.presentation.presentation;
public class topdfspecifyslide {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于操作powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件到presentation对象中
ppt.loadfromfile("sample.pptx");
// 获取演示文稿中的第二个幻灯片(索引为1)
islide slide= ppt.getslides().get(1);
// 将选定的幻灯片保存为pdf格式的文件,文件名为"topdf2.pdf"
slide.savetofile("topdf2.pdf", fileformat.pdf);
}
}
将 powerpoint 转换为 pdf/a
spire.presenation for java 提供了 savetopdfoption 类来设置一些 powerpoint 转 pdf 过程中的一些选项。比如你可以使用 savetopdfoption.setpdfconformancelevel() 方法来使生成的 pdf 文档满足 pdf/a 规范,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.getsavetopdfoption() 方法获取 savetopdfoption 对象。
- 通过 savetopdfoption.setpdfconformancelevel(pdfconformancelevel pdfconformancelevel) 设置结果 pdf 文档的格式。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.*;
import com.spire.presentation.pdf.pdfconformancelevel;
public class newtopdfa {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于处理powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件
ppt.loadfromfile("sample.pptx");
// 获取savetopdfoption对象
savetopdfoption savetopdfoption = ppt.getsavetopdfoption();
// 设置结果pdf的格式为pdf/a-1a
savetopdfoption.setpdfconformancelevel(pdfconformancelevel.pdf_a_1_a);
// 将powerpoint演示文稿保存为名为"outputpdfa.pdf"的pdf文件
ppt.savetofile("outputpdfa.pdf", fileformat.pdf);
// 释放资源
ppt.dispose();
}
}
将 powerpoint 转换为受密码保护的 pdf
spire.presenation for java 提供的 savetopdfoption 类还可以通过 savetopdfoption. getpdfsecurity().encrypt() 方法实现给转换后的 pdf 文档设置打开密码,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.getsavetopdfoption() 方法获取 savetopdfoption 对象。
- 通过 savetopdfoption. getpdfsecurity().encrypt(string openpassword) 方法来设置结果 pdf 文档的打开密码。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.fileformat;
import com.spire.presentation.presentation;
import com.spire.presentation.savetopdfoption;
public class topasswordpdf {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于处理powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件
ppt.loadfromfile("sample.pptx");
// 获取savetopdfoption对象
savetopdfoption savetopdfoption = ppt.getsavetopdfoption();
// 给结果pdf设置打开密码
savetopdfoption.getpdfsecurity().encrypt("e-iceblue");
// 将powerpoint演示文稿保存为名为"outputpass.pdf"的pdf文件
ppt.savetofile("outputpass.pdf", fileformat.pdf);
// 释放资源
ppt.dispose();
}
}
将 powerpoint 转换为有权限限制的 pdf
下面来看如何通过 spire.presenation for java 提供的 savetopdfoption 类来实现给 pdf 设置权限和权限密码,主要会使用到 savetopdfoption. getpdfsecurity().encrypt() 方法,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.getsavetopdfoption() 方法获取 savetopdfoption 对象。
- 通过 savetopdfoption. getpdfsecurity().encrypt(string permissionpassword, pdfpermissionsflags permissions) 方法来设置结果 pdf 文档的权限密码以及权限。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.*;
import com.spire.presentation.pdf.security.pdfpermissionsflags;
public class topermissionedpdf {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于处理powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件
ppt.loadfromfile("sample.pptx");
// 获取savetopdfoption对象
savetopdfoption savetopdfoption = ppt.getsavetopdfoption();
// 对生成的pdf设置权限密码、以及只允许文档有打印权限
savetopdfoption.getpdfsecurity().encrypt("e-iceblue", pdfpermissionsflags.print);
// 将powerpoint演示文稿保存为名为"outputpermission.pdf"的pdf文件
ppt.savetofile("outputpermission.pdf", fileformat.pdf);
// 释放资源
ppt.dispose();
}
}
将 powerpoint 转换为 pdf 时设置每页中幻灯片数量
spire.presentation for java 提供了 savetopdfoption.setpageslidecount() 方法来设置生成的 pdf 文档设置一个页面包含幻灯片的数量,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.getsavetopdfoption() 方法获取 savetopdfoption 对象。
- 通过 savetopdfoption.setpageslidecount(pageslidecount pageslidecount) 设置生成的 pdf 文档中一个页面包含几张幻灯片。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.*;
public class topdfnumber {
public static void main(string[] args) throws exception {
// 创建一个presentation对象,用于处理powerpoint演示文稿
presentation ppt = new presentation();
// 从文件系统中加载一个名为"sample.pptx"的powerpoint文件
ppt.loadfromfile("input.pptx");
// 获取savetopdfoption对象
savetopdfoption savetopdfoption = ppt.getsavetopdfoption();
// 设置生成的pdf文档中一个页面包含4页幻灯片
savetopdfoption.setpageslidecount(pageslidecount.four);
// 将powerpoint演示文稿保存为名为"outputnumber.pdf"的pdf文件
ppt.savetofile("outputnumber.pdf", fileformat.pdf);
// 释放资源
ppt.dispose();
}
}
将 powerpoint 转换为自定义页面尺寸的 pdf
将 powerpoint 文档转为 pdf,有时为了适合打印,需要重新设置页面大小,通过 presentation.getslidesize().settype() 方法来设置当前 powerpoint 文档的页面尺寸,转为 pdf 时也会是这个设置好的尺寸,详细步骤如下:
- 初始化一个 presentation 类的实例。
- 使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 通过 presentation.getslidesize().settype(slidesizetype slidesizetype) 方法来设置 powerpoint 文档的页面尺寸。
- 使用 presentation.savetofile(filepath, fileformat.pdf) 方法将其保存为 pdf 格式。
- java
import com.spire.presentation.*;
public class topdfwithspecificpagesize {
public static void main(string[] args) throws exception {
// 定义输入文件名,这里是一个powerpoint演示文稿文件
string inputfile = "sample.pptx";
// 定义输出文件名,这里是一个pdf文件
string outputfile = "result.pdf";
// 创建一个presentation对象,用于处理powerpoint文件
presentation ppt = new presentation();
// 从指定的文件中加载powerpoint演示文稿
ppt.loadfromfile(inputfile);
// 设置幻灯片的大小类型为a4纸张大小
ppt.getslidesize().settype(slidesizetype.a4);
// 将powerpoint演示文稿保存为pdf格式的文件
ppt.savetofile(outputfile, fileformat.pdf);
// 释放与presentation对象关联的资源
ppt.dispose();
}
}
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。