HTML JPG PDF XML DOCX
  Product Family
PDF

Заменить ссылки в PDF в Node.js SDK

Заменить ссылки в PDF-документе с помощью Cloud Node.js SDK

Get Started

Как заменить ссылки в PDF через Node.js SDK

Чтобы заменить ссылки в PDF, мы будем использовать Aspose.PDF Cloud Node.js SDK. Этот Cloud SDK помогает программистам на Node.js разрабатывать облачные приложения для создания, аннотирования, редактирования и конвертации PDF, используя язык программирования Node.js через Aspose.PDF REST API. Просто создайте аккаунт на Aspose for Cloud и получите информацию о вашем приложении. Как только у вас будут App SID и ключ, вы готовы использовать Aspose.PDF Cloud Node.js SDK.

Команда консоли диспетчера пакетов


     
    npm install asposepdfcloud --save
     
     

Шаги для замены ссылок с помощью Node.js

Разработчики Aspose.PDF Cloud могут легко загрузить и заменить ссылки в PDF всего за несколько строк кода.

  1. Создайте объект для подключения к Pdf.Cloud API
  2. Загрузите ваш документ
  3. Создайте новую ссылочную аннотацию с необходимыми свойствами
  4. Добавьте новую ссылочную аннотацию в документ, используя функцию postPageLinkAnnotations()
  5. Выполните некоторое действие после успешного добавления
  6. Скачайте результат, если это необходимо
 

Замена ссылок в PDF с помощью Node.js


 
    import credentials from "./credentials.json"  with { type: "json" };    // json-file in this format: { "id": "*****", "key": "*******" }
    import fs from 'node:fs/promises';
    import path from 'node:path';
    import { PdfApi } from "asposepdfcloud";;

    const configParams = {
        LOCAL_FOLDER: "C:\\Samples\\",
        PDF_DOCUMENT_NAME: "sample.pdf",
        LOCAL_RESULT_DOCUMENT_NAME: "output_sample.pdf",
        LINK_REMOVE_ID: "GI5UO32UN5KVESKBMN2GS33OHMZTEMJMGUYDQLBTGYYCYNJSGE",
        NEW_LINK_ACTION: "https://reference.aspose.cloud/pdf/#/",
        PAGE_NUMBER: 2,     // Your document page number...
    };

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

    const pdfLinks = {
    async uploadDocument() {
            const pdfFilePath = path.join(configParams.LOCAL_FOLDER, configParams.PDF_DOCUMENT_NAME);
            const pdfFileData = await fs.readFile(pdfFilePath);
            await pdfApi.uploadFile(configParams.PDF_DOCUMENT_NAME, pdfFileData);
        },
        
        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 replaceLink () {
            const link = await pdfLinks.getLinkById(configParams.LINK_REMOVE_ID);

            link.action = configParams.NEW_LINK_ACTION;
            
            var updResponse = await pdfApi.putLinkAnnotation(configParams.PDF_DOCUMENT_NAME, configParams.LINK_REMOVE_ID, link);

            if (updResponse.body.code == 200 && updResponse.body.link) {
                pdfLinks.showLinks( [ updResponse.body.link ], "drop");
                return updResponse.body.link;
            }
            else
                console.Error("Unexpected error : can't append link!!!");
        },

        async getLinkById () {
            const resultLinks = await pdfApi.getPageLinkAnnotation(configParams.PDF_DOCUMENT_NAME, configParams.PAGE_NUMBER, configParams.LINK_REMOVE_ID);

            if (resultLinks.body.code == 200 && resultLinks.body.link) {
                this.showLinks( [ resultLinks.body.link ], "found");
                return resultLinks.body.link;
            }
            else
                console.Error("Unexpected error : can't get link !!!");
        },

        showLinks (links, prefix) {
            if (Array.isArray(links) && links.length > 0)
            {
                links.forEach(function(link) {
                    console.log(prefix +" => '" + link.id + "', '" + link.action);
                });
            }
            else
                console.error("showLinks() error: array of links is empty!")
        },

    }

    async function main() {
        try {
            await pdfLinks.uploadDocument();
            await pdfLinks.replaceLink();
            await pdfLinks.downloadResult();
        } catch (error) {
            console.error("Error:", error.message);
        }
    }
 

Работа с ссылками в PDF

Регулярно просматривая и обновляя гиперссылки в ваших PDF-документах, вы можете поддерживать их актуальность, точность и безопасность, тем самым обеспечивая лучший опыт для ваших читателей. Замените ссылки в PDF-документах с помощью Aspose.PDF Cloud Node.js SDK.

С нашей библиотекой для Node.js вы можете:

  • Добавлять заголовок и подвал PDF-документа в текстовом или графическом формате.
  • Добавлять таблицы и штампы (текстовые или графические) в PDF-документы.
  • Присоединять несколько PDF-документов к существующему файлу.
  • Работать с вложениями, аннотациями и полями форм в PDF.
  • Применять шифрование или расшифровку к PDF-документам и устанавливать пароль.
  • Удалять все штампы и таблицы с одной страницы или из всего PDF-документа.
  • Удалять конкретный штамп или таблицу из PDF-документа по его ID.
  • Заменять одно или несколько вхождений текста на странице PDF или во всем документе.
  • Обширная поддержка конвертации PDF-документов в различные другие форматы файлов.
  • Извлекать различные элементы PDF-файлов и оптимизировать PDF-документы.
  • Вы можете попробовать наше бесплатное приложение для тестирования функциональности онлайн.