If you want to consider a commercial product, you could look at the LEADTOOLS Document Viewer for web (Disclaimer: I am an employee of the vender that distributes the LEADTOOLS SDK)
It can load and save different types of documents and can add mark-up to the files and then save them into a separate XML file or on the original document as an overlay.
The Document Viewer has text search functionality that allows you to search through a document for specific text, which can be used alongside the mark-up functionality. This
will allow you to highlight specific portions of text within your document. There’s an online demo where you can see all the features here:
Here is a screenshot of the mark-up:
Here is the documentation for the Document Viewer, Annotations, find, and hilite functions, respectively: