Як об’єднати та об’єднати PDF-файли в один онлайн за допомогою Node.js

Об’єднайте та об’єднайте PDF-файли в один онлайн за допомогою Node.js

Іноді нам може знадобитися об’єднати два або більше файлів PDF, щоб створити більш повний. Наприклад, вам потрібно об’єднати файли PDF для створення документів, використовуючи ваші раніше створені файли для посилань на дані або коли різні користувачі працюють над тією самою темою. Об’єднання PDF-файлів допоможе вам зберегти послідовність інформації та зробити ваші документи більш ефективними. Копіювати та вставляти вміст вручну або імпортувати вміст з інших документів для об’єднання документів може бути втомливо. Тому ми навчимося об’єднувати та об’єднувати PDF-файли в один онлайн за допомогою Node.js REST API.

Ця стаття охопить наступні теми.

API REST онлайнового злиття документів і SDK Node.js

Щоб об’єднати декілька PDF-файлів, я буду використовувати API Node.js SDK GroupDocs.Merger Cloud. Він дозволяє об’єднувати, витягувати, видаляти та змінювати порядок однієї сторінки чи колекції сторінок із підтримуваних форматів документів, таких як Word, Excel, PowerPoint, малюнки Visio, PDF і HTML тощо.

Наступна команда в консолі ввімкне хмару GroupDocs.Merger для вашої програми Node.js:

npm install groupdocs-merger-cloud

Будь ласка, отримайте свій ідентифікатор клієнта та секрет на інформаційній панелі, перш ніж виконувати вказані дії. Отримавши ідентифікатор і секрет, додайте код, як показано нижче:

# Імпортуйте Node.js SDK у свою програму вузла з http://api.groupdocs.cloud
global.groupdocs_merger_cloud = require("groupdocs-merger-cloud");
global.fs = require("fs");

// отримати clientId і clientSecret з https://dashboard.groupdocs.cloud (потрібна безкоштовна реєстрація).
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Об’єднайте PDF-файли в один за допомогою Node.js

У цьому розділі ми дізнаємося, як об’єднати кілька PDF-файлів в один програмним шляхом у хмарі, виконавши прості кроки, наведені нижче:

Завантажте PDF-файли

Спочатку скористайтеся наведеним нижче прикладом коду, щоб завантажити PDF-файли в хмару:

// побудувати FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// відкрити файл у IOStream із системного диска.
let resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-pdf\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    // читати файли по одному
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      // створити запит на завантаження файлу
      let request = new groupdocs_merger_cloud.UploadFileRequest("nodejs-testing/" + file, fileStream, myStorage);
      // завантажити файл
      fileApi.uploadFile(request)
        .then(function (response) {
          console.log(file + " file uploaded: " + response.uploaded.length);
        })
        .catch(function (error) {
          console.log("Error: " + error.message);
        });
    });
  });
});

Таким чином, завантажені PDF-файли будуть доступні в розділі файлів вашої інформаційної панелі в хмарі.

Об’єднайте кілька PDF-файлів в один онлайн за допомогою Node.js

Далі об’єднайте кілька PDF-файлів в один програмним шляхом, виконавши наведені нижче дії.

  • Створіть екземпляр DocumentApi
  • Тепер створіть перший JoinItem
  • Далі створіть перший елемент FileInfo
  • Укажіть шлях до вхідного файлу для першого об’єднаного елемента в інформації про файл
  • Створіть другий JoinItem
  • Створіть другий елемент FileInfo
  • Укажіть шлях до вхідного файлу для другого JoinItem у FileInfo
  • Створіть кілька файлів JoinOptions
  • Додати розділений комами список створених об’єднаних елементів
  • Встановіть шлях до вихідного файлу
  • Створіть JoinRequest з JoinOptions як аргумент
  • Нарешті, отримуйте результати, викликаючи метод join() DocumentAPI

У наведеному нижче фрагменті коду показано, як об’єднати кілька PDF-файлів за допомогою REST API у Node.js:

// Як об’єднати PDF-файли в один за допомогою Node.js
const combine = async () => {

let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

// створити перший об'єднаний елемент
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "nodejs-testing/sample-file1.pdf";

// створити другий об’єднаний елемент
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "nodejs-testing/sample-file2.pdf";

// створити параметри приєднання
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "nodejs-testing/joined-file.pdf";

  try {
    // Створити запит на приєднання документів
    let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
    let result = await documentApi.join(joinRequest);
  } 
  catch (err) {
    throw err;
  }
}

combine()
.then(() => {
  console.log("Successfully combined PDF documents: ");
})
.catch((err) => {
  console.log("Error occurred while merging the PDF files:", err);
})

Завантажити Об’єднання файлів PDF

Об’єднаний PDF-файл буде збережено в хмарі за допомогою наведеного вище фрагмента коду. Ви можете завантажити його за допомогою наступного зразка коду:

// створити FileApi для завантаження об’єднаного файлу
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// створити запит на завантаження файлу
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/joined-file.pdf", myStorage);
// завантажити файл і тип відповіді Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // збережіть файл у своєму системному каталозі
        fs.writeFile("H:\\groupdocs-cloud-data\\joined-file.pdf", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

Як об’єднати кілька сторінок PDF-файлів у Node.js

Ви можете швидко об’єднати певні слайди з кількох PDF-файлів в один програмним шляхом, виконавши наведені нижче дії.

  • По-перше, створіть екземпляр DocumentApi
  • Далі створіть перший JoinItem
  • Тепер створіть перший елемент FileInfo
  • Установіть шлях до вхідного файлу для першого JoinItem у FileInfo
  • Надайте розділений комами список сторінок для об’єднання
  • Створіть другий JoinItem
  • Створіть другий елемент FileInfo
  • Установіть шлях до вхідного файлу для другого JoinItem у FileInfo
  • Тепер встановіть значення startPageNumber
  • далі встановіть значення endPageNumber
  • Створіть кілька файлів JoinOptions
  • Додати розділений комами список створених об’єднаних елементів
  • Встановіть шлях до вихідного файлу
  • Створіть JoinRequest з JoinOptions як аргумент
  • Отримайте результати, викликавши метод join() DocumentAPI

У наступному фрагменті коду показано, як об’єднати певні PDF-файли за допомогою REST API у Node.js:

// Як об’єднати кілька сторінок PDF-файлів у Node.js
const mergespecific = async () => {

  // Ініціалізація API об’єднання PDF-файлів
  let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);

  // створити перший об'єднаний елемент
  let item1 = new groupdocs_merger_cloud.JoinItem();
  item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
  item1.fileInfo.filePath = "nodejs-testing/sample-file1.pdf";
  item1.pages = [1, 3];

  // створити другий об’єднаний елемент
  let item2 = new groupdocs_merger_cloud.JoinItem();
  item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
  item2.fileInfo.filePath = "nodejs-testing/sample-file2.pdf";
  item2.startPageNumber = 2
  item2.endPageNumber = 4

  // створити параметри приєднання
  let options = new groupdocs_merger_cloud.JoinOptions();
  options.joinItems = [item1, item2];
  options.outputPath = "nodejs-testing/joined-file.pdf";

  try {
    // Створити запит на приєднання документів
    let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
    let result = await documentApi.join(joinRequest);
  } 
  catch (err) {
    throw err;
  }
}

mergespecific()
.then(() => {
  console.log("Successfully merged PDF documents specific pages: ");
})
.catch((err) => {
  console.log("Error occurred while combining the PDF files:", err);
})

Об’єднайте PDF-файли в один онлайн безкоштовно

Будь ласка, спробуйте наступний безкоштовний онлайн-інструмент для об’єднання PDF-файлів, який розроблено за допомогою наведеного вище API.

Висновок

У цій статті ви дізналися:

  • як об’єднати кілька файлів PDF в один PDF за допомогою Node.js;
  • як об’єднати певні сторінки PDF-файлів у Node.js за допомогою REST API;
  • програмно завантажувати PDF-файли та завантажувати об’єднаний PDF-файл із хмари;

API також дозволяє змінювати порядок або замінювати сторінки документа, змінювати орієнтацію сторінки, керувати паролями документів і легко виконувати інші маніпуляції для будь-якого підтримуваного формату файлу. Він також надає пакети SDK .NET, Java, PHP, Ruby, Android і Python як членів сімейства об’єднаних документів для Cloud API. Ви можете дізнатися більше про GroupDocs.Merge Cloud API, використовуючи документацію. Ми також надаємо розділ API Reference, який дозволяє візуалізувати наші API та взаємодіяти з ними безпосередньо через браузер.

Ми також рекомендуємо вам прочитати наш Посібник із початку роботи.

Крім того, groupdocs.cloud пише інші статті в блозі на нові теми. Будь ласка, будьте в курсі останніх оновлень.

Задайте питання

Ви можете поставити свої запитання про те, як об’єднати файли PDF, на нашому безкоштовному форумі підтримки

поширені запитання

Як об’єднати кілька сторінок в один PDF-файл за допомогою Node.js?

Будь ласка, дотримуйтесь код Node.js, щоб знати, як швидко та легко поєднувати файли PDF у Windows. Ви можете відвідати документацію, щоб отримати повну інформацію про API.

Дивись також

Радимо прочитати наступні статті, щоб дізнатися більше: