Spire.Cloud.PDF 添加、提取 PDF 文本

 

Spire.Cloud.PDF提供了PdfTextApi接口来操作PDF文档中的文本内容。本文将使用该接口来介绍如何给PDF文档添加新的文本及提取文档中已有的文本内容。具体操作步骤和代码演示参见下文。

步骤一:创建一个maven程序,并通过maven仓库安装Spire.Cloud.SDK.jar包及其依赖。详细导入方法可参考这篇教程

步骤二:通过冰蓝云官网(https://cloud.e-iceblue.cn/)注册账号并登陆,在“我的应用” 版块创建应用程序,以获得App ID及App Key。

Spire.Cloud.PDF 添加、提取 PDF 文本

步骤三:上传PDF示例文档至冰蓝云官网的“文档管理”版块。

Spire.Cloud.PDF 添加、提取 PDF 文本

步骤四:在Maven程序中编写代码调用PdfTextApi接口来给PDF示例文档添加新的文本及提取其已有文本内容。

添加新文本到PDF文档

import spire.cloud.pdf.sdk.*;
import spire.cloud.pdf.sdk.api.PdfTextApi;
import spire.cloud.pdf.sdk.model.*;

public class AddText {
    private static String appId = "App ID";
    private static String appKey = "App Key";
    private 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);
        //创建PdfTextApi实例
        PdfTextApi PdfTextApi = new PdfTextApi(PdfConfiguration);

        //PDF示例文档名称
        String name = "Sample.pdf";
        //指定结果文档名称
        String outPath = "AddText_output.pdf";
        //指定需添加文本的页码
        int pageNumber =1;
        //示例文档所属文件夹,若无,则null
        String folder = null;
        //示例文档打开密码,若无,则null
        String password = null;
        //示例文档所属内存,冰蓝云提供2G的免费存储空间
        String storage = null;

        //指定需添加的文本内容
        Text text = new Text();
        text.setValue("Chapbook");

        //设置文本字体格式
        Font font = new Font();
        font.setFontType(Font.FontTypeEnum.STANDARD);
        font.setFontFamily("Helvetica");
        font.setFontSize(15f);
        font.setFontStyle(Font.FontStyleEnum.REGULAR);
        text.setFont(font);

        //指定文本所在位置
        RectangleF rectangleF = new RectangleF();
        rectangleF.setX(20f);
        rectangleF.setY(20f);
        rectangleF.setWidth(800f);
        rectangleF.setHeight(800f);
        text.setRect(rectangleF);

        //设置文本字体颜色
        Color backColor = new Color();
        backColor.setA(1);
        backColor.setR(120);
        backColor.setG(182);
        backColor.setB(193);
        text.setBackgroundColor(backColor);

        //调用addText方法给示例文档添加新的文本
        PdfTextApi.addText(name, outPath, pageNumber, text, folder, storage,password);
    }
}

添加效果

Spire.Cloud.PDF 添加、提取 PDF 文本

提取PDF文本内容

import spire.cloud.pdf.sdk.*;
import spire.cloud.pdf.sdk.api.PdfTextApi;

public class ExtractText {
    private static String appId = "App ID";
    private static String appKey = "App Key";
    private 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);
        //创建PdfTextApi实例
        PdfTextApi PdfTextApi = new PdfTextApi(PdfConfiguration);

        //PDF示例文档名称
        String name = "Sample.pdf";
        //指定结果文档名称
        String outPath = "ExtractText_output.txt";
        //指定需提取文本的页码
        int pageNumber = 1;
        //示例文档打开密码,若无,则null
        String password = null;
        //示例文档所属内存,冰蓝云提供2G的免费存储空间
        String storage = null;
        //示例文档所属文件夹,若无,则null
        String folder = null;

        //调用extractText方法来提取示例文档中的文本信息
        PdfTextApi.extractText(name, outPath, pageNumber, folder, storage, password);
    }
}

提取效果

Spire.Cloud.PDF 添加、提取 PDF 文本