HTML JPG PDF XML DOCX
  Product Family
PDF

在 Node.js SDK 中从 PDF 中移除表格

使用云端 Node.js SDK 处理 PDF 文档中的表格的 API

Get Started

如何通过 Node.js SDK 从 PDF 中移除表格

要从 PDF 中移除表格,我们将使用 Aspose.PDF Cloud Node.js SDK。这个云端 SDK 帮助 Node.js 程序员使用 Aspose.PDF REST API 开发基于云的 PDF 创建、注释、编辑和转换应用程序。只需在 Aspose for Cloud 创建一个账户并获取您的应用信息。一旦拥有了 App SID 和密钥,您就可以开始使用 Aspose.PDF Cloud Node.js SDK。

包管理器控制台命令


     
    npm install asposepdfcloud --save
     
     

通过云端 Node.js 删除 PDF 中表格的步骤

Aspose.PDF Cloud 开发人员可以轻松地用几行代码加载并移除 PDF 中的表格。

  1. 读取本地 PDF 文件。
  2. 将本地 PDF 上传到 Aspose Cloud。
  3. 获取文档中的所有表格
  4. 删除特定表格
  5. 删除一个表格后获取表格
  6. 从特定页面删除所有表格
  7. 删除所有表格后获取表格
  8. 下载生成的 PDF
 

使用 Node.js 从 PDF 中删除表格


    import credentials from "../../../../Credentials/credentials.json"  with { type: "json" };
    import fs from 'node:fs/promises';
    import path from 'node:path';
    import { PdfApi } from "../../../src/api/api.js"

    const configParams = {
        LOCAL_FOLDER: "C:\\Samples\\",
        PDF_DOCUMENT_NAME: "sample.pdf",
        LOCAL_RESULT_DOCUMENT_NAME: "output_sample.pdf",
        PAGE_NUMBER: 1,                                 // Your document page number...
        TABLE_ID: "GE5TCOZSGAYCYNRQGUWDINZVFQ3DGMA",     // Your table id...
    };

    const pdfApi = new PdfApi(credentials.id, credentials.key);

    const pdfTables = {
        async uploadDocument () {
            const fileNamePath = path.join(configParams.LOCAL_FOLDER, configParams.PDF_DOCUMENT_NAME);
            const pdfFileData = await fs.readFile(fileNamePath);
            await pdfApi.uploadFile(configParams.PDF_DOCUMENT_NAME, pdfFileData);
            console.log("File '" + configParams.PDF_DOCUMENT_NAME + "' successfully uploaded!");
        },
                                
        async downloadResult () {
            const changedPdfData = await pdfApi.downloadFile(configParams.PDF_DOCUMENT_NAME);
            const filePath = path.join(configParams.LOCAL_FOLDER, configParams.LOCAL_RESULT_DOCUMENT_NAME);
            await fs.writeFile(filePath, changedPdfData.body);
            console.log("Downloaded: " + filePath);
        },

        async getAllTables (prefix) {
            const resultTabs = await pdfApi.getDocumentTables(configParams.PDF_DOCUMENT_NAME);
        
            if (resultTabs.body.code == 200 && resultTabs.body.tables) {
                if (!Array.isArray(resultTabs.body.tables.list) || resultTabs.body.tables.list.length === 0)
                    console.log(prefix + " => Unexpected error : tables is null or empty!!!");
                else
                    this.showTablesInfo(resultTabs.body.tables.list, prefix);
            }
            else
                console.error(prefix + " => Unexpected error : can't get tables!!!");
        },

        async deleteTable () {
            const resultTabs = await pdfApi.deleteTable(configParams.PDF_DOCUMENT_NAME, configParams.TABLE_ID);
            if (resultTabs.body.code == 200) {
                console.log("Table #" + configParams.TABLE_ID + " deleted!");
                return true;
            }
            else
                console.error("Unexpected error : can't delete table!");
        },

        async deleteTables () {
            const resultTabs = await pdfApi.deletePageTables(configParams.PDF_DOCUMENT_NAME, configParams.PAGE_NUMBER);

            if (resultTabs.body.code == 200) {
                console.log("Tables on page #" + configParams.PAGE_NUMBER + " deleted!");
                return true;
            }
            else
                throw new Error("Unexpected error : can't get tables!!!");
        },

        showTablesInfo (tables, prefix) {
            if (Array.isArray(tables) && tables.length > 0)
            {
                tables.forEach(function(table) {
                    console.log(prefix +" => id: '" + table.id + "', page: '" + table.pageNum + "', rows: '" + table.rowList.length + "', columns: '" + table.rowList[0].cellList.length + "'");
                });
            }
            else
                console.error("showTablesInfo() error: array of tables is empty!")
        },
    }

    async function main() {
        try {
            await pdfTables.uploadDocument();

            await pdfTables.getAllTables("All tables");
            await pdfTables.deleteTable();
            await pdfTables.getAllTables("Tables after drop one");

            await pdfTables.deleteTables(configParams.PAGE_NUMBER);
            await pdfTables.getAllTables("Tables after drop all");

            await pdfTables.downloadResult();
        } catch (error) {
            console.error("Error:", error.message);
        }
    }
 

从 PDF 中移除表格

从 PDF 文档中删除表格通常是为了清理内容、简化布局或为演示、修订或数据迁移做准备。移除不必要或过时的表格可提高可读性、减少文件大小、保护敏感信息,并确保仅保留相关数据。当定制报告、生成模板或准备符合法规的文件时,此过程也很有用。 使用 Aspose.PDF Cloud Node.js SDK 从 PDF 文档中删除表格。

通过我们的 Node.js 库,您可以:

  • 以文本或图像格式添加 PDF 文档的页眉和页脚。
  • 向 PDF 文档添加表格和图章(文本或图像)。
  • 将多个 PDF 文档追加到现有文件。
  • 处理 PDF 附件、注释和表单字段。
  • 对 PDF 文档进行加密或解密并设置密码。
  • 从页面或整个 PDF 文档中删除所有图章和表格。
  • 通过 ID 从 PDF 文档中删除特定图章或表格。
  • 替换 PDF 页面或整个文档中的单个或多个文本实例。
  • 广泛支持将 PDF 文档转换为各种其他文件格式。
  • 提取 PDF 文件的各种元素并使 PDF 文档优化。
  • 您可以试用我们的免费应用在线将表格提取到 PDF 文件中并测试功能。