V cloudu můžete programově porovnávat dva nebo více dokumentů PDF. Porovnání vám umožní identifikovat podobnosti a rozdíly v dokumentech. V tomto článku se dozvíte, jak porovnávat soubory PDF pomocí REST API v Node.js.
V tomto článku se budou zabývat následujícími tématy:
- Porovnání dokumentů REST API a Node.js SDK
- Porovnejte soubory PDF pomocí rozhraní REST API v Node.js
- Porovnejte více souborů PDF pomocí Node.js
- Přizpůsobte výsledky porovnání pomocí Node.js
- Získejte seznam změn pomocí Node.js
- Porovnejte a uložte s heslem a metadaty pomocí Node.js
Porovnání dokumentů REST API a Node.js SDK
K porovnávání dokumentů PDF budu používat Node.js SDK of GroupDocs.Comparison Cloud API. To vám umožní porovnat dva nebo více dokumentů a najít rozdíly. V důsledku toho vytvoří výsledný soubor obsahující rozdíly. Umožňuje vám také přijmout nebo odmítnout načtené změny. Můžete jej 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 formátů. Poskytuje také .NET, Java, PHP, Python a Ruby SDK jako členové rodiny porovnávání dokumentů pro Cloud API.
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 --save
Než budete postupovat podle uvedených kroků, získejte prosím své ID klienta a tajný klíč z dashboard. 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 soubory PDF pomocí rozhraní REST API v Node.js
Své dokumenty PDF můžete porovnat programově podle následujících jednoduchých kroků:
- Nahrát soubory PDF do cloudu
- Porovnejte soubory PDF pomocí Node.js
- Stáhnout výsledný soubor PDF
Nahrajte soubory PDF
Nejprve nahrajte zdrojové a cílové soubory PDF 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\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// číst soubory jeden po druhém
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// vytvořit žádost o nahrání souboru
let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
// nahrát soubor
fileApi.uploadFile(request)
.then(function (response) {
console.log(file + " uploaded: " + response.uploaded.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
});
});
});
V důsledku toho budou nahrané soubory PDF dostupné v sekce souborů vašeho řídicího panelu v cloudu.
Porovnejte soubory PDF pomocí Node.js
Dva dokumenty PDF můžete porovnat programově podle následujících kroků:
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .pdf
- Nastavte cílový soubor .pdf
- Definujte možnosti ComparisonOptions
- Přiřaďte zdrojové a cílové soubory
- Nastavte cestu k výstupnímu souboru
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
Následující příklad kódu ukazuje, jak porovnat dva soubory PDF 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.pdf";
// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porovnatd/result.pdf";
// 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);
Výsledný soubor také obsahuje souhrnnou stránku na konci dokumentu, jak je uvedeno níže:
Stáhněte si výsledný soubor
Výše uvedená ukázka kódu uloží rozdíly do nově vytvořeného souboru PDF 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.pdf", myStorage);
// stáhnout soubor
let response = await fileApi.downloadFile(request);
// uložit do pracovního adresáře
fs.writeFile("C:\\Files\\result.pdf", response, "binary", function (err) { });
Porovnejte více souborů PDF pomocí Node.js
Pomocí následujících jednoduchých kroků můžete programově porovnat více dokumentů PDF:
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .pdf
- Nastavte více cílových souborů .pdf
- Vytvořte instanci ComparisonOptions
- Přiřaďte zdrojové a cílové soubory
- Nastavte cestu k výstupnímu souboru
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
Následující příklad kódu ukazuje, jak porovnat více souborů PDF pomocí 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.pdf";
// cílový soubor 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pdf";
// cílový soubor 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pdf";
// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "porovnatd/result.pdf";
// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porovnat
let response = await porovnatApi.comparisons(request);
Přizpůsobte výsledky porovnání pomocí Node.js
Styl změn můžete snadno upravit programově podle následujících kroků:
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .pdf
- Nastavte cílový soubor .pdf
- Vytvořit instanci Nastavení
- Nastavte citlivost porovnání
- Přizpůsobte styl položek
- Vytvořte instanci ComparisonOptions
- Přiřaďte zdrojové a cílové soubory
- Nastavte cestu k výstupnímu souboru
- Přiřadit nastavení
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
Následující příklad 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.pdf";
// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// definovat nastavení porovnání
let settings = new groupdocs_comparison_cloud.Settings();
// porovnat citlivost
settings.sensitivityOfComparison = 100;
// přizpůsobit styl změn
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;
// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porovnatd/result_porovnatOptions.pdf";
options.settings = settings;
// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porovnat
let response = await porovnatApi.comparisons(request);
Získejte seznam změn pomocí Node.js
Úplný seznam nalezených rozdílů můžete získat po programovém porovnání dokumentů PDF podle jednoduchých kroků uvedených níže:
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .pdf
- Nastavte cílový soubor .pdf
- Definujte možnosti ComparisonOptions
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
- Zobrazit všechny změny jednu po druhé
Následující příklad 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.pdf";
// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.pdf";
// vytvořit žádost o srovnání
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);
});
Porovnejte a uložte s heslem a metadaty pomocí Node.js {#Compare-and-Save-with-Password-&-Metadata-using-Nodejs}
Chcete-li výsledný soubor chránit heslem a uložit jej s metadaty, postupujte podle níže uvedených kroků:
- Vytvořte instanci CompareApi
- Nastavte zdrojový soubor .pdf
- Nastavte cílový soubor .pdf
- Vytvořit instanci Nastavení
- Nastavte metadata a heslo
- Vytvořte instanci ComparisonOptions
- Přiřaďte zdrojové a cílové soubory
- Nastavte cestu k výstupnímu souboru
- Přiřadit nastavení
- Create ComparisonsRequest
- Získejte výsledky voláním metody CompareApi.comparisons()
Následující příklad kódu ukazuje, jak uložit výsledný soubor s heslem a metadaty pomocí 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.pdf";
// cílový soubor
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
let settings = new groupdocs_comparison_cloud.Settings();
// nastavit metadata
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;
// nastavit heslo
settings.password = "password";
settings.passwordSaveOption = groupdocs_comparison_cloud.Settings.PasswordSaveOptionEnum.User;
// definovat možnosti porovnání
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porovnatd/result_Metadata.pdf";
options.settings = settings;
// vytvořit žádost o srovnání
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porovnat
let response = await porovnatApi.comparisons(request);
Vyzkoušejte online
Vyzkoušejte prosím následující bezplatný online porovnávací nástroj PDF, který je vyvinut pomocí výše uvedeného API. https://products.groupdocs.app/comparison/pdf
Závěr
V tomto článku jste se naučili porovnávat dokumenty PDF v cloudu. Také jste se naučili, jak porovnat více souborů PDF, přizpůsobit styl změn a získat seznam změn. Navíc jste se naučili, jak programově nahrát více souborů PDF do cloudu a poté stáhnout výsledný soubor z cloudu. Více o GroupDocs.Comparison Cloud API se můžete dozvědět 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.