Confronta i file PDF utilizzando l'API REST in NodeJs

Puoi confrontare due o più documenti PDF in modo programmatico sul cloud. Il confronto consente di identificare somiglianze e differenze nei documenti. In questo articolo imparerai come confrontare i file PDF utilizzando un’API REST in Node.js.

In questo articolo saranno trattati i seguenti argomenti:

Confronto documenti REST API e Node.js SDK

Userò l’API Node.js SDK of GroupDocs.Comparison Cloud per confrontare i documenti PDF. Ti permette di confrontare due o più documenti e trovare le differenze. Di conseguenza, crea un file risultante contenente le differenze. Consente inoltre di accettare o rifiutare le modifiche recuperate. Puoi integrarlo facilmente nelle tue applicazioni Node.js esistenti per confrontare documenti, fogli di calcolo, presentazioni, diagrammi di Visio, e-mail e file di molti altri formati. Fornisce inoltre SDK .NET, Java, PHP, Python e Ruby come membri della famiglia di confronto dei documenti per l’API Cloud.

Puoi installare GroupDocs.Comparison Cloud nella tua applicazione Node.js utilizzando il seguente comando nella console:

npm install groupdocs-comparison-cloud --save

Si prega di ottenere l’ID cliente e il segreto dalla dashboard prima di seguire i passaggi menzionati. Una volta che hai il tuo ID e segreto, aggiungi il codice come mostrato di seguito:

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";

Confronta i file PDF utilizzando un’API REST in Node.js

Puoi confrontare i tuoi documenti PDF in modo programmatico seguendo i semplici passaggi indicati di seguito:

  1. Carica i file PDF nel Cloud
  2. Confronta i file PDF utilizzando Node.js
  3. Scarica il file PDF risultante

Carica i file PDF

Innanzitutto, carica i file PDF di origine e di destinazione nel cloud utilizzando il seguente esempio di codice:

// costruire FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    // leggere i file uno per uno
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      // creare richiesta di file di caricamento
      let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
      // caricare un file
      fileApi.uploadFile(request)
        .then(function (response) {
          console.log(file + " uploaded: " + response.uploaded.length);
        })
        .catch(function (error) {
          console.log("Error: " + error.message);
        });
    });
  });
});

Di conseguenza, i file PDF caricati saranno disponibili nella sezione file della dashboard sul cloud.

Confronta i file PDF utilizzando Node.js

È possibile confrontare due documenti PDF a livello di programmazione seguendo i passaggi indicati di seguito:

  • Crea un’istanza di CompareApi
  • Imposta il file .pdf di origine
  • Imposta il file .pdf di destinazione
  • Definisci opzioni di confronto
  • Assegna file di origine e di destinazione
  • Imposta il percorso del file di output
  • Crea confronti Richiesta
  • Ottieni risultati chiamando il metodo CompareApi.comparisons().

L’esempio di codice seguente mostra come confrontare due file PDF utilizzando un’API REST in Node.js.

// inizializza l'API
let confrontareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// file sorgente
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// file di destinazione
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// definire le opzioni di confronto
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "confrontared/result.pdf";

// creare richiesta di confronto
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// confrontare
let response = await confrontareApi.comparisons(request);
console.log("Output file link: " + response.href);
Confronta i file PDF utilizzando Node.js

Confronta i file PDF utilizzando Node.js

Il file risultante contiene anche una pagina di riepilogo alla fine del documento come mostrato di seguito:

Confronta i file PDF utilizzando l'API REST in Node.js

Scarica il file risultante

L’esempio di codice precedente salverà le differenze in un file PDF appena creato sul cloud. Puoi scaricarlo utilizzando il seguente esempio di codice:

// costruire FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// creare richiesta di file di download
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared\\result.pdf", myStorage);

// download file
let response = await fileApi.downloadFile(request);

// salvare nella directory di lavoro
fs.writeFile("C:\\Files\\result.pdf", response, "binary", function (err) { });

Confronta più file PDF utilizzando Node.js

Puoi confrontare più documenti PDF in modo programmatico seguendo i semplici passaggi indicati di seguito:

  • Crea un’istanza di CompareApi
  • Imposta il file .pdf di origine
  • Imposta più file .pdf di destinazione
  • Crea un’istanza ComparisonOptions
  • Assegna file di origine e di destinazione
  • Imposta il percorso del file di output
  • Crea confronti Richiesta
  • Ottieni risultati chiamando il metodo CompareApi.comparisons().

L’esempio di codice seguente mostra come confrontare più file PDF utilizzando un’API REST in Node.js.

// inizializza l'API
let confrontareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// file sorgente
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// file di destinazione 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pdf";

// file di destinazione 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pdf";

// definire le opzioni di confronto
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "confrontared/result.pdf";

// creare richiesta di confronto
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// confrontare
let response = await confrontareApi.comparisons(request);

Personalizza i risultati del confronto utilizzando Node.js

È possibile personalizzare facilmente lo stile delle modifiche a livello di codice seguendo i passaggi indicati di seguito:

  • Crea un’istanza di CompareApi
  • Imposta il file .pdf di origine
  • Imposta il file .pdf di destinazione
  • Crea istanza Impostazioni
  • Imposta la sensibilità di confronto
  • Personalizza lo stile degli articoli
  • Crea un’istanza ComparisonOptions
  • Assegna file di origine e di destinazione
  • Imposta il percorso del file di output
  • Assegna impostazioni
  • Crea confronti Richiesta
  • Ottieni risultati chiamando il metodo CompareApi.comparisons().

L’esempio di codice seguente mostra come personalizzare i risultati del confronto utilizzando un’API REST in Node.js.

// inizializza l'API
let confrontareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// file sorgente
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// file di destinazione
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// definire le impostazioni di confronto
let settings = new groupdocs_comparison_cloud.Settings();

// confronta la sensibilità
settings.sensitivityOfComparison = 100;

// personalizza le modifiche allo stile
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;

// definire le opzioni di confronto
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "confrontared/result_confrontareOptions.pdf";
options.settings = settings;

// creare richiesta di confronto
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// confrontare
let response = await confrontareApi.comparisons(request);

Ottieni l’elenco delle modifiche utilizzando Node.js

È possibile ottenere un elenco completo delle differenze rilevate dopo aver confrontato i documenti PDF a livello di programmazione seguendo i semplici passaggi indicati di seguito:

  • Crea un’istanza di CompareApi
  • Imposta il file .pdf di origine
  • Imposta il file .pdf di destinazione
  • Definisci opzioni di confronto
  • Crea confronti Richiesta
  • Ottieni risultati chiamando il metodo CompareApi.comparisons().
  • Mostra tutte le modifiche una per una

L’esempio di codice seguente mostra come ottenere un elenco di modifiche utilizzando un’API REST in Node.js.

// inizializza l'API
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// file sorgente
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// file di destinazione
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// definire le opzioni di confronto
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.pdf";

// creare richiesta di confronto
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);
});
Ottieni l'elenco delle modifiche utilizzando Node.js

Ottieni l’elenco delle modifiche utilizzando Node.js

Confronta e salva con password e metadati utilizzando Node.js {#Compare-and-Save-with-Password-&-Metadata-using-Nodejs}

Si prega di seguire i passaggi indicati di seguito per proteggere con password il file risultante e salvarlo con i metadati:

  • Crea un’istanza di CompareApi
  • Imposta il file .pdf di origine
  • Imposta il file .pdf di destinazione
  • Crea istanza Impostazioni
  • Imposta metadati e password
  • Crea un’istanza ComparisonOptions
  • Assegna file di origine e di destinazione
  • Imposta il percorso del file di output
  • Assegna impostazioni
  • Crea confronti Richiesta
  • Ottieni risultati chiamando il metodo CompareApi.comparisons().

L’esempio di codice seguente mostra come salvare il file risultante con password e metadati utilizzando un’API REST in Node.js.

// inizializza l'API
let confrontareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// file sorgente
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// file di destinazione
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

let settings = new groupdocs_comparison_cloud.Settings();

// impostare i metadati
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;

// impostare la password
settings.password = "password";
settings.passwordSaveOption = groupdocs_comparison_cloud.Settings.PasswordSaveOptionEnum.User;

// definire le opzioni di confronto
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "confrontared/result_Metadata.pdf";
options.settings = settings;

// creare richiesta di confronto
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// confrontare
let response = await confrontareApi.comparisons(request);

Prova in linea

Prova il seguente strumento di confronto PDF online gratuito, sviluppato utilizzando l’API di cui sopra. https://products.groupdocs.app/comparison/pdf

Conclusione

In questo articolo, hai imparato a confrontare i documenti PDF sul cloud. Hai anche imparato a confrontare più file PDF, personalizzare lo stile delle modifiche e ottenere un elenco delle modifiche. Inoltre, hai imparato come caricare in modo programmatico più file PDF nel cloud e quindi scaricare il file risultante dal cloud. Puoi saperne di più su GroupDocs.Comparison Cloud API utilizzando la documentazione. Forniamo anche una sezione Riferimento API che ti consente di visualizzare e interagire con le nostre API direttamente attraverso il browser. In caso di ambiguità, non esitate a contattarci sul forum.

Guarda anche