Using our programming API, you can compare two files and find the difference between them. In other words, our C++ library is a powerful file difference checker. After using Document Comparison API, you can get the result and save it in DOCX, PDF, DOC and some other formats.
Comparing documents is a very complex function. But we implemented our solution so that you get the most accurate result. Instead of looking for document differences manually, use our C++ API to compare docs.
Document comparing is performed by comparing words at the level of characters or whole words. In this case, if only a character was changed, the word will be highlighted as the whole changed.
The most popular are Word Compare and PDF Compare. Therefore, we will show the C++ Comparison API using the example of comparing Word files and comparing PDF documents.
Comparing PDF files programmatically is a typical task of modern digital workflow. This may be required when you are not sure that your document has not been modified. Or when you know your original PDF has been updated and you want to know how.
To compare two PDFs, just verify them with our C++ library. It allows you to diff PDF and find even small changes that would be invisible to the human eye.
To compare two Word documents in C++ you need to do the same: diff them using our powerful C++ library through the example below.
Unlike PDFs, Word documents are easier to change, which is why it can be so important to compare Word documents if you need to make sure that some parts of it or an entire file are unchanged.
To test how our C++ solution works and to diff two files, import files you want to compare and choose an export file format. After files are compared, the document containing the difference of this comparison will be automatically downloaded.
Note that documents to compare should not have any revisions before calling the compare method, so we took care of that in our example:
using namespace Aspose::Words;
auto docA = MakeObject<Document>(u"Input1.docx");
auto docB = MakeObject<Document>(u"Input2.docx");
// There should be no revisions before comparison.
docA->AcceptAllRevisions();
docB->AcceptAllRevisions();
docA->Compare(docB, u"Author Name", time(0));
docA->Save(u"Output.docx");
There are three options to install Aspose.Words for C++ to your developer environment. Please choose one that resembles your needs and follow the step-by-step instructions:
You can use this C++ library to develop software on Microsoft Windows, Linux and macOS operating systems:
If you develop software for Linux or macOS, please check information on additional library dependencies (fontconfig and mesa-glu open-source packages) in Product Documentation.