Możesz programowo porównać dwa lub więcej dokumentów PDF w chmurze. Porównanie pozwala zidentyfikować podobieństwa i różnice w dokumentach. W tym artykule dowiesz się, jak porównywać pliki PDF za pomocą REST API w Node.js.
W tym artykule zostaną omówione następujące tematy:
- Porównanie dokumentów REST API i Node.js SDK
- Porównaj pliki PDF za pomocą interfejsu API REST w Node.js
- Porównaj wiele plików PDF za pomocą Node.js
- Dostosuj wyniki porównania za pomocą Node.js
- Uzyskaj listę zmian za pomocą Node.js
- Porównaj i zapisz z hasłem i metadanymi za pomocą Node.js
Porównanie dokumentów REST API i Node.js SDK
Będę używać Node.js SDK of GroupDocs.Comparison Cloud API do porównywania dokumentów PDF. Pozwala porównać dwa lub więcej dokumentów i znaleźć różnice. W rezultacie tworzy wynikowy plik zawierający różnice. Umożliwia także zaakceptowanie lub odrzucenie pobranych zmian. Możesz łatwo zintegrować go z istniejącymi aplikacjami Node.js, aby porównywać dokumenty, arkusze kalkulacyjne, prezentacje, diagramy Visio, wiadomości e-mail i pliki w wielu innych formatach. Udostępnia również zestawy SDK .NET, Java, PHP, Python i Ruby jako członkowie rodziny porównywania dokumentów dla Cloud API.
Możesz zainstalować GroupDocs.Comparison Cloud w swojej aplikacji Node.js za pomocą następującego polecenia w konsoli:
npm install groupdocs-comparison-cloud --save
Przed wykonaniem wspomnianych kroków uzyskaj swój identyfikator klienta i klucz tajny z pulpitu nawigacyjnego. Po uzyskaniu identyfikatora i tajnego kodu dodaj kod, jak pokazano poniżej:
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";
Porównaj pliki PDF za pomocą interfejsu API REST w Node.js
Możesz programowo porównywać swoje dokumenty PDF, wykonując proste czynności podane poniżej:
- Prześlij pliki PDF do chmury
- Porównaj pliki PDF za pomocą Node.js
- Pobierz wynikowy plik PDF
Prześlij pliki PDF
Najpierw prześlij źródłowy i docelowy plik PDF do chmury, korzystając z następującego przykładowego kodu:
// skonstruuj FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// czytać pliki jeden po drugim
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// utwórz prośbę o przesłanie pliku
let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
// Przesyłanie pliku
fileApi.uploadFile(request)
.then(function (response) {
console.log(file + " uploaded: " + response.uploaded.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
});
});
});
W rezultacie przesłane pliki PDF będą dostępne w sekcji plików Twojego pulpitu nawigacyjnego w chmurze.
Porównaj pliki PDF za pomocą Node.js
Możesz programowo porównać dwa dokumenty PDF, wykonując czynności wymienione poniżej:
- Utwórz instancję CompareApi
- Ustaw źródłowy plik .pdf
- Ustaw docelowy plik .pdf
- Zdefiniuj opcje porównania
- Przypisz pliki źródłowe i docelowe
- Ustaw ścieżkę pliku wyjściowego
- Utwórz żądanie porównania
- Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().
Poniższy przykład kodu pokazuje, jak porównać dwa pliki PDF przy użyciu interfejsu API REST w Node.js.
// zainicjować api
let porównywaćApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// Plik źródłowy
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porównywaćd/result.pdf";
// utwórz prośbę o porównanie
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porównywać
let response = await porównywaćApi.comparisons(request);
console.log("Output file link: " + response.href);
Wynikowy plik zawiera również stronę podsumowania na końcu dokumentu, jak pokazano poniżej:
Pobierz wynikowy plik
Powyższy przykładowy kod zapisze różnice w nowo utworzonym pliku PDF w chmurze. Możesz go pobrać, korzystając z następującego przykładowego kodu:
// skonstruuj FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
// utwórz żądanie pobrania pliku
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared\\result.pdf", myStorage);
// pobieranie pliku
let response = await fileApi.downloadFile(request);
// zapisać w katalogu roboczym
fs.writeFile("C:\\Files\\result.pdf", response, "binary", function (err) { });
Porównaj wiele plików PDF za pomocą Node.js
Możesz programowo porównywać wiele dokumentów PDF, wykonując proste czynności wymienione poniżej:
- Utwórz instancję CompareApi
- Ustaw źródłowy plik .pdf
- Ustaw wiele docelowych plików .pdf
- Utwórz instancję ComparisonOptions
- Przypisz pliki źródłowe i docelowe
- Ustaw ścieżkę pliku wyjściowego
- Utwórz żądanie porównania
- Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().
Poniższy przykład kodu pokazuje, jak porównać wiele plików PDF przy użyciu interfejsu API REST w Node.js.
// zainicjować api
let porównywaćApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// Plik źródłowy
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";
// plik docelowy 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pdf";
// plik docelowy 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pdf";
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "porównywaćd/result.pdf";
// utwórz prośbę o porównanie
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porównywać
let response = await porównywaćApi.comparisons(request);
Dostosuj wyniki porównania za pomocą Node.js
Możesz łatwo dostosować styl zmian programowo, wykonując czynności wymienione poniżej:
- Utwórz instancję CompareApi
- Ustaw źródłowy plik .pdf
- Ustaw docelowy plik .pdf
- Utwórz instancję ustawień
- Ustaw czułość porównania
- Dostosuj styl elementów
- Utwórz instancję ComparisonOptions
- Przypisz pliki źródłowe i docelowe
- Ustaw ścieżkę pliku wyjściowego
- Przypisz ustawienia
- Utwórz żądanie porównania
- Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().
Poniższy przykład kodu pokazuje, jak dostosować wyniki porównania przy użyciu interfejsu API REST w Node.js.
// zainicjować api
let porównywaćApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// Plik źródłowy
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// zdefiniuj ustawienia porównania
let settings = new groupdocs_comparison_cloud.Settings();
// porównaj czułość
settings.sensitivityOfComparison = 100;
// dostosuj styl zmian
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;
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porównywaćd/result_porównywaćOptions.pdf";
options.settings = settings;
// utwórz prośbę o porównanie
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porównywać
let response = await porównywaćApi.comparisons(request);
Uzyskaj listę zmian za pomocą Node.js
Możesz uzyskać pełną listę znalezionych różnic po programowym porównaniu dokumentów PDF, wykonując proste czynności wymienione poniżej:
- Utwórz instancję CompareApi
- Ustaw źródłowy plik .pdf
- Ustaw docelowy plik .pdf
- Zdefiniuj opcje porównania
- Utwórz żądanie porównania
- Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().
- Pokaż wszystkie zmiany jeden po drugim
Poniższy przykład kodu pokazuje, jak uzyskać listę zmian przy użyciu interfejsu API REST w Node.js.
// zainicjować api
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// Plik źródłowy
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.pdf";
// utwórz prośbę o porównanie
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);
});
Porównaj i zapisz z hasłem i metadanymi za pomocą Node.js {#Compare-and-Save-with-Password-&-Metadata-using-Nodejs}
Wykonaj poniższe czynności, aby zabezpieczyć plik wynikowy hasłem i zapisać go wraz z metadanymi:
- Utwórz instancję CompareApi
- Ustaw źródłowy plik .pdf
- Ustaw docelowy plik .pdf
- Utwórz instancję ustawień
- Ustaw metadane i hasło
- Utwórz instancję ComparisonOptions
- Przypisz pliki źródłowe i docelowe
- Ustaw ścieżkę pliku wyjściowego
- Przypisz ustawienia
- Utwórz żądanie porównania
- Uzyskaj wyniki, wywołując metodę CompareApi.comparisons().
Poniższy przykład kodu pokazuje, jak zapisać wynikowy plik z hasłem i metadanymi przy użyciu interfejsu API REST w Node.js.
// zainicjować api
let porównywaćApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// Plik źródłowy
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";
let settings = new groupdocs_comparison_cloud.Settings();
// ustawić metadane
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;
// Ustaw hasło
settings.password = "password";
settings.passwordSaveOption = groupdocs_comparison_cloud.Settings.PasswordSaveOptionEnum.User;
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "porównywaćd/result_Metadata.pdf";
options.settings = settings;
// utwórz prośbę o porównanie
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// porównywać
let response = await porównywaćApi.comparisons(request);
Wypróbuj online
Wypróbuj następujące bezpłatne narzędzie do porównywania plików PDF online, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/comparison/pdf
Wniosek
W tym artykule nauczyłeś się porównywać dokumenty PDF w chmurze. Nauczyłeś się również porównywać wiele plików PDF, dostosowywać styl zmian i uzyskiwać listę zmian. Ponadto nauczyłeś się programowo przesyłać wiele plików PDF do chmury, a następnie pobierać wynikowy plik z chmury. Możesz dowiedzieć się więcej o GroupDocs.Comparison Cloud API, korzystając z dokumentacji. Udostępniamy również sekcję Informacje o interfejsach API, która umożliwia wizualizację naszych interfejsów API i interakcję z nimi bezpośrednio w przeglądarce. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.