Jako programista Node.js możesz łatwo programowo porównywać dwa lub więcej dokumentów Worda pod kątem podobieństw i różnic w chmurze. Może pomóc w śledzeniu zmian w różnych wersjach tego samego dokumentu Word lub różnych dokumentów. W tym artykule dowiesz się, jak porównać dwa lub więcej dokumentów Worda za pomocą REST API w Node.js.
W tym artykule zostaną omówione następujące tematy:
- REST API i Node.js SDK do porównywania dokumentów Worda
- Porównanie dwóch plików programu Word przy użyciu interfejsu API REST w Node.js
- Porównaj wiele plików DOCX za pomocą Node.js
- Uzyskaj listę zmian za pomocą REST API w Node.js
- Dostosuj wyniki porównania za pomocą Node.js
REST API i Node.js SDK do porównywania dokumentów Worda
Do porównania dwóch lub więcej plików DOCX użyjemy Node.js SDK of GroupDocs.Comparison Cloud API. Pozwala porównać dwa lub więcej dokumentów i znaleźć różnice w pliku wynikowym. Zestaw SDK można łatwo zintegrować z istniejącymi aplikacjami Node.js w celu porównywania dokumentów, arkuszy kalkulacyjnych, prezentacji, diagramów programu Visio, wiadomości e-mail i plików w wielu innych obsługiwanych formatach.
Możesz zainstalować GroupDocs.Comparison Cloud w swojej aplikacji Node.js za pomocą następującego polecenia w konsoli:
npm install groupdocs-comparison-cloud
Proszę uzyskaj swój identyfikator klienta i klucz tajny z pulpitu nawigacyjnego przed wykonaniem wspomnianych kroków. 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ównanie dwóch plików programu Word przy użyciu interfejsu API REST w Node.js
Możesz programowo porównywać dokumenty programu Word, wykonując proste czynności podane poniżej:
- Prześlij pliki DOCX do chmury
- Porównaj pliki Word za pomocą Node.js
- Pobierz wynikowy plik DOCX
Prześlij pliki DOCX
Najpierw prześlij źródłowe i docelowe pliki DOCX 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\\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);
});
});
});
W rezultacie przesłane pliki DOCX będą dostępne w sekcji plików Twojego pulpitu nawigacyjnego w chmurze.
Porównaj pliki Word za pomocą Node.js
Możesz programowo porównać dwa dokumenty programu Word, wykonując czynności podane poniżej:
- Najpierw utwórz instancję CompareApi.
- Następnie utwórz instancję FileInfo i ustaw źródłową ścieżkę pliku wejściowego DOCX.
- Następnie utwórz kolejną instancję FileInfo i ustaw docelową ścieżkę pliku wejściowego DOCX.
- Następnie utwórz instancję ComparisonOptions i przypisz pliki źródłowe i docelowe.
- Następnie ustaw ścieżkę pliku wyjściowego.
- Następnie utwórz ComparisonsRequest z ComparisonOptions.
- Na koniec uzyskaj wyniki, wywołując metodę CompareApi.comparisons() z ComparisonsRequest.
Poniższy przykładowy kod pokazuje, jak porównać dwa pliki programu Word 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.docx";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";
// 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.docx";
// 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);
Pobierz wynikowy plik
Powyższy przykładowy kod zapisze różnice w nowo utworzonym pliku DOCX 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_compareOptions.docx", myStorage);
// pobieranie pliku
let response = await fileApi.downloadFile(request);
// zapisać w katalogu roboczym
fs.writeFile("C:\\Files\\comparison\\result_compareOptions.docx", response, "binary", function (err) { });
Porównaj wiele plików DOCX za pomocą Node.js
Możesz programowo porównać wiele dokumentów programu Word, wykonując czynności podane poniżej:
- Najpierw utwórz instancję CompareApi.
- Następnie utwórz instancję FileInfo i ustaw źródłową ścieżkę pliku wejściowego DOCX.
- Następnie utwórz kolejną instancję FileInfo i ustaw docelową ścieżkę pliku wejściowego DOCX.
- Powtórz powyższe kroki, aby dodać wiele plików docelowych.
- Następnie utwórz instancję ComparisonOptions i przypisz pliki źródłowe i docelowe.
- Następnie ustaw ścieżkę pliku wyjściowego.
- Następnie utwórz ComparisonsRequest z ComparisonOptions.
- Na koniec uzyskaj wyniki, wywołując metodę CompareApi.comparisons() z ComparisonsRequest
Poniższy przykładowy kod pokazuje, jak porównać wiele plików programu Word 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.docx";
// plik docelowy 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target1.docx";
// plik docelowy 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.docx";
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "porównywaćd/result_Multiple.docx";
// 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);
Uzyskaj listę zmian za pomocą REST API w Node.js
Pełną listę znalezionych różnic można uzyskać po programowym porównaniu dokumentów programu Word, wykonując czynności podane poniżej:
- Najpierw utwórz instancję CompareApi
- Następnie utwórz instancję FileInfo i ustaw źródłową ścieżkę pliku wejściowego DOCX
- Następnie utwórz kolejną instancję FileInfo i ustaw docelową ścieżkę pliku wejściowego DOCX
- Następnie utwórz instancję ComparisonOptions i przypisz pliki źródłowe i docelowe
- Następnie ustaw ścieżkę pliku wyjściowego
- Następnie utwórz PostChangesRequest z ComparisonOptions
- Następnie uzyskaj wyniki, wywołując metodę CompareApi.postChanges() z PostChangesRequest
- Na koniec pokaż wszystkie zmiany jeden po drugim
Poniższy przykładowy kod 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.docx";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";
// zdefiniuj opcje porównania
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.docx";
// utwórz żądanie zmian postu
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);
// zmiany postów
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);
});
Dostosuj wyniki porównania za pomocą Node.js
Możesz łatwo dostosować styl zmian programowo, wykonując czynności podane poniżej:
- Najpierw utwórz instancję CompareApi.
- Następnie utwórz instancję FileInfo i ustaw źródłową ścieżkę pliku wejściowego DOCX.
- Następnie utwórz kolejną instancję FileInfo i ustaw docelową ścieżkę pliku wejściowego DOCX.
- Następnie utwórz instancję Ustawień i ustaw różne ustawienia porównania, takie jak czułośćPorównania.
- Następnie utwórz instancje ItemsStyle dla wstawionych stylów, usuniętych elementów i zmienionych elementów.
- Następnie ustaw różne właściwości dla każdego ItemsStyle, takie jak highlightColor, fontColor, pogrubienie, kursywa itp.
- Następnie utwórz instancję ComparisonOptions i przypisz pliki źródłowe i docelowe.
- Następnie ustaw ścieżkę pliku wyjściowego.
- Następnie przypisz ustawienia do ComparisonOptions
- Następnie utwórz ComparisonsRequest z ComparisonOptions.
- Na koniec uzyskaj wyniki, wywołując metodę CompareApi.comparisons() z ComparisonsRequest
Poniższy przykładowy kod 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.docx";
// plik docelowy
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.docx";
// zdefiniuj ustawienia porównania
let settings = new groupdocs_comparison_cloud.Settings();
// porównaj czułość
settings.sensitivityOfComparison = 100;
// dostosuj styl zmian dla wstawionych elementów
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;
// dostosuj styl zmian dla usuniętych elementów
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;
// dostosuj styl zmian dla zmienionych elementów
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.docx";
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);
console.log("Output file link: " + response.href);
Wypróbuj online
Wypróbuj następujące bezpłatne narzędzie online do porównywania DOCX, które zostało opracowane przy użyciu powyższego interfejsu API. https://products.groupdocs.app/comparison/docx
Wniosek
W tym artykule nauczyłeś się porównywać dokumenty programu Word przy użyciu interfejsu API REST w chmurze. Ponadto widziałeś, jak programowo porównywać wiele plików DOCX. W tym artykule wyjaśniono również, jak programowo przesłać plik DOCX do chmury, a następnie pobrać wynikowy plik z chmury. Poza tym 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.