I will try to answer the questions in the order they appear in your post.
1. You can read the content of a particular page and extract it in a different document using the Selection
API. When you have the content separated, you can traverse each element inside easily. Here is an example of how you could select the second page of the document and extract a new document from it:
DocumentPosition startPosition =
DocumentPosition endPosition =
RadDocument documentFromSelection =
To iterate the document elements
, you can use the EnumerateChildrenOfType() generic method.
2. I would suggest you check the Track Changes
functionality of RadRichTextBox as it seems like it would fit your requirements for this case.
3. Can you please elaborate more on that requirement? Why you need to search them and how you would search? Do you need to find the DocumentPosition
of those elements or their current position on the screen?
4. The styling mechanism is pretty complex and the properties are stored in the elements they concern. For example, the properties defining how a page should look like (margin, page size, etc.) are preserved in the Section
objects. The font properties can be inherited or locally applied to the Span
elements. Why you need them? If I have more details here, I might be able to suggest you a more concrete solution.
5. I am not sure I understand the scenario here. Do you need to compare PDF documents?
6. Merging PDF documents can be achieved using the PdfStreamWriter
functionality of RadPdfProcessing
. We have an SDK example
showing how this case could be implemented.
Want to extend the target reach of your WPF applications, leveraging iOS, Android, and UWP? Try UI for Xamarin
, a suite of polished and feature-rich components for the Xamarin framework, which allow
you to write beautiful native mobile apps using a single shared C# codebase.