Spire.Cloud.PDF提供了PdfPropertiesApi接口,支持添加和操作PDF文档属性。本文将介绍如何使用PdfPropertiesApi接口实现在PDF中添加/更新和删除PDF文档属性。
首先:通过Maven仓库安装Spire.Cloud.SDK jar包及依赖,详细步骤可参考这篇文章。
其次:通过冰蓝云官网(https://cloud.e-iceblue.cn/)注册账号并登陆,在“我的应用”版块创建应用程序,获得App ID及App Key。
第三:上传PDF示例文档至冰蓝云官网的“文档管理”版块。为了便于文档管理,您也可以先创建文件夹“input”和“output”,然后将示例上传至input文件夹,output文件夹用于存放生成的文档。
最后:在Java程序中编写代码在PDF中添加/更新和删除PDF文档属性。
示例1、添加/更新文档属性
import spire.cloud.pdf.sdk.ApiException;
import spire.cloud.pdf.sdk.Configuration;
import spire.cloud.pdf.sdk.api.PdfPropertiesApi;
import spire.cloud.pdf.sdk.model.DocumentProperties;
import spire.cloud.pdf.sdk.model.DocumentProperty;
import java.util.ArrayList;
public class AddDocumentProperties {
static String appId = "APP ID";
static String appKey = "APP Key";
static String baseUrl = "https://api.e-iceblue.cn";
public static void main(String[] args) throws ApiException {
//配置APP ID和APP Key
Configuration PdfConfiguration = new Configuration(appId, appKey, baseUrl);
//创建PdfPropertiesApi实例
PdfPropertiesApi pdfPropertiesApi = new PdfPropertiesApi(PdfConfiguration);
//示例文档名称
String name = "Sample.pdf";
//存放示例文档的文件夹
String folder = "input";
//示例文档的密码
String password = null;
//使用冰蓝云默认的存储空间
String storage = null;
//输出文档路径
String outPath = "output/AddOrUpdateProperties.pdf";
DocumentProperties properties = new DocumentProperties();
properties.setList(new ArrayList());
//创建内置文档属性
DocumentProperty property = new DocumentProperty();
property.setName("author");
property.setValue("Simon");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("creator");
property.setValue("Simon2");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("keywords");
property.setValue("the keywords");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("producer");
property.setValue("Spire.pdf");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("subject");
property.setValue("the subject");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("title");
property.setValue("the title");
properties.getList().add(property);
//创建自定义文档属性
property = new DocumentProperty();
property.setName("customProperty1");
property.setValue("the customProperty1");
properties.getList().add(property);
property = new DocumentProperty();
property.setName("customProperty2");
property.setValue("the customProperty2");
properties.getList().add(property);
//调用addOrUpdateProperties添加或更新文档属性
pdfPropertiesApi.addOrUpdateProperties(name, outPath, properties, folder, storage, password);
}
}
示例2、删除文档属性
import spire.cloud.pdf.sdk.ApiException;
import spire.cloud.pdf.sdk.Configuration;
import spire.cloud.pdf.sdk.api.PdfPropertiesApi;
public class DeleteDocumentProperties {
static String appId = "APP ID";
static String appKey = "APP Key";
static String baseUrl = "https://api.e-iceblue.cn";
public static void main(String[] args) throws ApiException {
//配置APP ID和APP Key
Configuration PdfConfiguration = new Configuration(appId, appKey, baseUrl);
//创建PdfPropertiesApi实例
PdfPropertiesApi pdfPropertiesApi = new PdfPropertiesApi(PdfConfiguration);
//示例文档名称
String name = "Example.pdf";
//存放示例文档的文件夹
String folder = "input";
//示例文档的密码
String password = null;
//使用冰蓝云默认的存储空间
String storage = null;
//输出文档路径
String outPath = "output/DeleteProperties.pdf";
//调用deleteProperties方法删除文档的文档属性
pdfPropertiesApi.deleteProperties(name, outPath, folder, storage, password);
}
}