Porovnejte dokumenty Word pomocí REST API v Node.js

Jako vývojář Node.js můžete snadno porovnat dva nebo více dokumentů Wordu z hlediska podobností a rozdílů programově v cloudu. Může vám pomoci sledovat změny v různých verzích stejného dokumentu aplikace Word nebo různých dokumentů. V tomto článku se dozvíte, jak porovnat dva nebo více dokumentů Word pomocí REST API v Node.js.

V tomto článku se budou zabývat následujícími tématy:

REST API a Node.js SDK pro porovnání dokumentů aplikace Word

Pro porovnání dvou nebo více souborů DOCX použijeme Node.js SDK of GroupDocs.Comparison Cloud API. Umožňuje vám porovnat dva nebo více dokumentů a najít rozdíly ve výsledném souboru. Sadu SDK můžete snadno integrovat do svých stávajících aplikací Node.js a porovnávat dokumenty, tabulky, prezentace, diagramy aplikace Visio, e-maily a soubory mnoha dalších podporovaných formátů.

GroupDocs.Comparison Cloud můžete nainstalovat do své aplikace Node.js pomocí následujícího příkazu v konzole:

npm install groupdocs-comparison-cloud

Před provedením uvedených kroků získejte své ID klienta a tajný klíč z řídicího panelu. Jakmile budete mít své ID a tajemství, přidejte kód, jak je uvedeno níže:

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

Porovnejte dva soubory Word pomocí REST API v Node.js

Své dokumenty Word můžete porovnat programově podle následujících jednoduchých kroků:

  1. Nahrát soubory DOCX do cloudu
  2. Porovnejte soubory Word pomocí Node.js
  3. Stáhnout výsledný soubor DOCX

Nahrajte soubory DOCX

Nejprve nahrajte zdrojové a cílové soubory DOCX do cloudu pomocí následující ukázky kódu:

// vytvořit FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\comparison\\uploads\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    console.log(file);
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
      fileApi.uploadFile(request);
    });
  });
});

V důsledku toho budou nahrané soubory DOCX dostupné v sekce souborů vašeho řídicího panelu v cloudu.

Porovnejte soubory Word pomocí Node.js

Dva dokumenty Wordu můžete porovnat programově podle následujících kroků:

  • Nejprve vytvořte instanci CompareApi.
  • Dále vytvořte instanci FileInfo a nastavte cestu k zdrojovému vstupnímu souboru DOCX.
  • Poté vytvořte další instanci FileInfo a nastavte cestu k cílovému vstupnímu souboru DOCX.
  • Poté vytvořte instanci ComparisonOptions a přiřaďte zdrojové a cílové soubory.
  • Poté nastavte cestu k výstupnímu souboru.
  • Dále vytvořte ComparisonsRequest s ComparisonOptions.
  • Nakonec získejte výsledky voláním metody CompareApi.comparisons() pomocí ComparisonsRequest.

Následující ukázka kódu ukazuje, jak porovnat dva soubory aplikace Word pomocí rozhraní REST API v Node.js.

// inicializovat api
let porovnatApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// zdrojový soubor
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porovnatd/result_porovnatOptions.docx";

// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// porovnat
let response = await porovnatApi.comparisons(request);
console.log("Output file link: " + response.href);
Zdrojové a cílové soubory.

Zdrojové a cílové soubory.

Porovnejte dva soubory Word pomocí REST API v Node.js

Porovnejte dva soubory Word pomocí REST API v Node.js

Stáhněte si výsledný soubor

Výše uvedená ukázka kódu uloží rozdíly do nově vytvořeného souboru DOCX v cloudu. Můžete si jej stáhnout pomocí následující ukázky kódu:

// vytvořit FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// vytvořit žádost o stažení souboru
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared/result_compareOptions.docx", myStorage);

// stáhnout soubor
let response = await fileApi.downloadFile(request);

// uložit do pracovního adresáře
fs.writeFile("C:\\Files\\comparison\\result_compareOptions.docx", response, "binary", function (err) { });

Porovnejte více souborů DOCX pomocí Node.js

Pomocí následujících kroků můžete programově porovnat více dokumentů aplikace Word:

  • Nejprve vytvořte instanci CompareApi.
  • Dále vytvořte instanci FileInfo a nastavte cestu k zdrojovému vstupnímu souboru DOCX.
  • Poté vytvořte další instanci FileInfo a nastavte cestu k cílovému vstupnímu souboru DOCX.
  • Chcete-li přidat více cílových souborů, opakujte výše uvedené kroky.
  • Poté vytvořte instanci ComparisonOptions a přiřaďte zdrojové a cílové soubory.
  • Poté nastavte cestu k výstupnímu souboru.
  • Dále vytvořte ComparisonsRequest s ComparisonOptions.
  • Nakonec získejte výsledky voláním metody CompareApi.comparisons() pomocí ComparisonsRequest

Následující ukázka kódu ukazuje, jak porovnat více souborů aplikace Word pomocí rozhraní REST API v Node.js.

// inicializovat api
let porovnatApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// zdrojový soubor
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// cílový soubor 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target1.docx";

// cílový soubor 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.docx";

// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "porovnatd/result_Multiple.docx";

// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// porovnat
let response = await porovnatApi.comparisons(request);
console.log("Output file link: " + response.href);

Získejte seznam změn pomocí REST API v Node.js

Úplný seznam nalezených rozdílů můžete získat po programovém porovnání dokumentů aplikace Word podle následujících kroků:

  • Nejprve vytvořte instanci CompareApi
  • Dále vytvořte instanci FileInfo a nastavte cestu k zdrojovému vstupnímu souboru DOCX
  • Poté vytvořte další instanci FileInfo a nastavte cestu k cílovému vstupnímu souboru DOCX
  • Poté vytvořte instanci ComparisonOptions a přiřaďte zdrojové a cílové soubory
  • Poté nastavte cestu k výstupnímu souboru
  • Dále vytvořte PostChangesRequest s ComparisonOptions
  • Poté získejte výsledky voláním metody CompareApi.postChanges() pomocí PostChangesRequest
  • Nakonec zobrazte všechny změny jednu po druhé

Následující ukázka kódu ukazuje, jak získat seznam změn pomocí rozhraní REST API v Node.js.

// inicializovat api
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// zdrojový soubor
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.docx";

// vytvořit požadavek na změny
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);

// odeslat změny
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);
});
Získejte seznam změn pomocí REST API v Node.js

Získejte seznam změn pomocí REST API v Node.js

Přizpůsobte výsledky porovnání pomocí Node.js

Styl změn můžete snadno upravit programově podle následujících kroků:

  • Nejprve vytvořte instanci CompareApi.
  • Dále vytvořte instanci FileInfo a nastavte cestu k zdrojovému vstupnímu souboru DOCX.
  • Poté vytvořte další instanci FileInfo a nastavte cestu k cílovému vstupnímu souboru DOCX.
  • Poté vytvořte instanci Nastavení a nastavte různá nastavení porovnání, jako je sensitiveOfComparison.
  • Dále vytvořte instance ItemsStyle pro insertItemsStyle, deleteItemsStyle a changedItemsStyle.
  • Poté nastavte různé vlastnosti pro každý ItemsStyle, jako je highlightColor, fontColor, tučné, kurzíva atd.
  • Poté vytvořte instanci ComparisonOptions a přiřaďte zdrojové a cílové soubory.
  • Poté nastavte cestu k výstupnímu souboru.
  • Dále přiřaďte nastavení ComparisonOptions
  • Poté vytvořte ComparisonsRequest s ComparisonOptions.
  • Nakonec získejte výsledky voláním metody CompareApi.comparisons() pomocí ComparisonsRequest

Následující ukázka kódu ukazuje, jak přizpůsobit výsledky porovnání pomocí rozhraní REST API v Node.js.

// inicializovat api
let porovnatApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// zdrojový soubor
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.docx";

// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";

// definovat nastavení porovnání
let settings = new groupdocs_comparison_cloud.Settings();

// porovnat citlivost
settings.sensitivityOfComparison = 100;

// přizpůsobit styl změn pro vložené položky
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;

// přizpůsobit styl změn pro odstraněné položky
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;

// upravit styl změn pro změněné položky
settings.changedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.changedItemsStyle.fontColor = "14320170";
settings.changedItemsStyle.italic = true;

// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porovnatd/result_porovnatOptions.docx";
options.settings = settings;

// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// porovnat
let response = await porovnatApi.comparisons(request);
console.log("Output file link: " + response.href);

Vyzkoušejte online

Vyzkoušejte prosím následující bezplatný online srovnávací nástroj DOCX, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/comparison/docx

Závěr

V tomto článku jste se naučili porovnávat dokumenty Wordu pomocí REST API v cloudu. Navíc jste viděli, jak programově porovnat více souborů DOCX. Tento článek také vysvětluje, jak programově nahrát soubor DOCX do cloudu a poté stáhnout výsledný soubor z cloudu. Kromě toho se můžete dozvědět více o GroupDocs.Comparison Cloud API pomocí dokumentace. Poskytujeme také sekci API Reference, která vám umožní vizualizovat a pracovat s našimi API přímo prostřednictvím prohlížeče. V případě jakýchkoliv nejasností nás prosím neváhejte kontaktovat na fóru.

Viz také