Порівняйте PDF-файли за допомогою REST API у NodeJs

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

У цій статті будуть розглянуті такі теми:

Порівняння документів REST API і Node.js SDK

Я буду використовувати API Node.js SDK GroupDocs.Comparison Cloud для порівняння PDF-документів. Це дозволяє порівнювати два або більше документів і знаходити відмінності. У результаті створюється результуючий файл, що містить відмінності. Це також дозволяє прийняти або відхилити отримані зміни. Ви можете легко інтегрувати його у свої існуючі програми Node.js, щоб порівнювати документи, електронні таблиці, презентації, діаграми Visio, електронні листи та файли багатьох інших форматів. Він також надає .NET, Java, PHP, Python і Ruby SDK як члени сімейства порівняння документів для Cloud API.

Ви можете встановити GroupDocs.Comparison Cloud у свою програму Node.js за допомогою такої команди в консолі:

npm install groupdocs-comparison-cloud --save

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

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_comparison_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Порівняйте PDF-файли за допомогою REST API у Node.js

Ви можете програмно порівняти свої PDF-документи, дотримуючись простих кроків, наведених нижче:

  1. Завантажте файли PDF у хмару
  2. Порівняти PDF-файли за допомогою Node.js
  3. Завантажити отриманий PDF-файл

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

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

// побудувати FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\';

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

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

Порівняйте PDF-файли за допомогою Node.js

Ви можете програмно порівняти два PDF-документи, виконавши наведені нижче дії.

  • Створіть екземпляр CompareApi
  • Встановіть вихідний файл .pdf
  • Встановіть цільовий файл .pdf
  • Визначте ComparisonOptions
  • Призначте вихідний і цільовий файли
  • Встановіть шлях до вихідного файлу
  • Створіть ComparisonsRequest
  • Отримайте результати, викликавши метод CompareApi.comparisons().

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

// ініціалізувати api
let порівнятиApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// вихідний файл
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// цільовий файл
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// визначити параметри порівняння
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "порівнятиd/result.pdf";

// створити запит на порівняння
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// порівняти
let response = await порівнятиApi.comparisons(request);
console.log("Output file link: " + response.href);
Порівняйте PDF-файли за допомогою Node.js

Порівняйте PDF-файли за допомогою Node.js

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

Порівняйте PDF-файли за допомогою REST API у Node.js

Завантажте отриманий файл

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

// побудувати FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// створити запит на завантаження файлу
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared\\result.pdf", myStorage);

// завантажити файл
let response = await fileApi.downloadFile(request);

// зберегти в робочому каталозі
fs.writeFile("C:\\Files\\result.pdf", response, "binary", function (err) { });

Порівняйте кілька PDF-файлів за допомогою Node.js

Ви можете програмно порівняти кілька PDF-документів, виконавши прості кроки, наведені нижче:

  • Створіть екземпляр CompareApi
  • Встановіть вихідний файл .pdf
  • Встановіть кілька цільових файлів .pdf
  • Створіть екземпляр ComparisonOptions
  • Призначте вихідний і цільовий файли
  • Встановіть шлях до вихідного файлу
  • Створіть ComparisonsRequest
  • Отримайте результати, викликавши метод CompareApi.comparisons().

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

// ініціалізувати api
let порівнятиApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// вихідний файл
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// цільовий файл 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pdf";

// цільовий файл 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pdf";

// визначити параметри порівняння
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "порівнятиd/result.pdf";

// створити запит на порівняння
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// порівняти
let response = await порівнятиApi.comparisons(request);

Налаштуйте результати порівняння за допомогою Node.js

Ви можете легко налаштувати стиль змін програмним шляхом, виконавши наведені нижче дії.

  • Створіть екземпляр CompareApi
  • Встановіть вихідний файл .pdf
  • Встановіть цільовий файл .pdf
  • Створіть екземпляр налаштувань
  • Встановити чутливість порівняння
  • Налаштувати стиль елементів
  • Створіть екземпляр ComparisonOptions
  • Призначте вихідний і цільовий файли
  • Встановіть шлях до вихідного файлу
  • Призначити налаштування
  • Створіть ComparisonsRequest
  • Отримайте результати, викликавши метод CompareApi.comparisons().

У наведеному нижче прикладі коду показано, як налаштувати результати порівняння за допомогою REST API у Node.js.

// ініціалізувати api
let порівнятиApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// вихідний файл
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// цільовий файл
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// визначте параметри порівняння
let settings = new groupdocs_comparison_cloud.Settings();

// порівняти чутливість
settings.sensitivityOfComparison = 100;

// налаштувати стиль змін
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;
settings.changedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.changedItemsStyle.fontColor = "14320170";
settings.changedItemsStyle.italic = true;

// визначити параметри порівняння
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "порівнятиd/result_порівнятиOptions.pdf";
options.settings = settings;

// створити запит на порівняння
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// порівняти
let response = await порівнятиApi.comparisons(request);

Отримайте список змін за допомогою Node.js

Ви можете отримати повний список знайдених відмінностей після програмного порівняння PDF-документів, виконавши наведені нижче прості дії:

  • Створіть екземпляр CompareApi
  • Встановіть вихідний файл .pdf
  • Встановіть цільовий файл .pdf
  • Визначте ComparisonOptions
  • Створіть ComparisonsRequest
  • Отримайте результати, викликавши метод CompareApi.comparisons().
  • Показати всі зміни по черзі

У наведеному нижче прикладі коду показано, як отримати список змін за допомогою REST API у Node.js.

// ініціалізувати api
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// вихідний файл
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// цільовий файл
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// визначити параметри порівняння
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.pdf";

// створити запит на порівняння
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);
let changes = await compareApi.postChanges(request);

console.log("Changes count: " + changes.length);

changes.forEach(change => {
  console.log(change.id + 1 +"- Target Text: " + change.targetText + ", Text: " + change.text + ", Type: " + change.type);
});
Отримайте список змін за допомогою Node.js

Отримайте список змін за допомогою Node.js

Порівняйте та збережіть пароль і метадані за допомогою Node.js {#Compare-and-Save-with-Password-&-Metadata-using-Nodejs}

Виконайте наведені нижче кроки, щоб захистити отриманий файл паролем і зберегти його з метаданими:

  • Створіть екземпляр CompareApi
  • Встановіть вихідний файл .pdf
  • Встановіть цільовий файл .pdf
  • Створіть екземпляр налаштувань
  • Встановіть метадані та пароль
  • Створіть екземпляр ComparisonOptions
  • Призначте вихідний і цільовий файли
  • Встановіть шлях до вихідного файлу
  • Призначити налаштування
  • Створіть ComparisonsRequest
  • Отримайте результати, викликавши метод CompareApi.comparisons().

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

// ініціалізувати api
let порівнятиApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// вихідний файл
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// цільовий файл
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

let settings = new groupdocs_comparison_cloud.Settings();

// встановити метадані
settings.metadata = new groupdocs_comparison_cloud.Metadata();
settings.metadata.author = "Author";
settings.metadata.company = "GroupDocs";
settings.metadata.lastSaveBy = "Last saved by";
settings.cloneMetadata = groupdocs_comparison_cloud.Settings.CloneMetadataEnum.FileAuthor;

// встановити пароль
settings.password = "password";
settings.passwordSaveOption = groupdocs_comparison_cloud.Settings.PasswordSaveOptionEnum.User;

// визначити параметри порівняння
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "порівнятиd/result_Metadata.pdf";
options.settings = settings;

// створити запит на порівняння
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// порівняти
let response = await порівнятиApi.comparisons(request);

Спробуйте онлайн

Будь ласка, спробуйте наведений нижче безкоштовний онлайн-інструмент порівняння PDF-файлів, який розроблено за допомогою вищезазначеного API. https://products.groupdocs.app/comparison/pdf

Висновок

У цій статті ви дізналися, як порівнювати PDF-документи в хмарі. Ви також навчилися порівнювати кілька PDF-файлів, налаштовувати стиль змін і отримувати список змін. Крім того, ви навчилися програмно завантажувати кілька PDF-файлів у хмару, а потім завантажувати отриманий файл із хмари. Ви можете дізнатися більше про GroupDocs.Comparison Cloud API, використовуючи документацію. Ми також надаємо розділ API Reference, який дозволяє візуалізувати наші API та взаємодіяти з ними безпосередньо через браузер. У разі будь-якої неясності зв’яжіться з нами на форумі.

Дивись також