How to implement custom PDF rasterizing/rendering?

Q:
Will PDFNet SDK allow me to read a PDF file (including ones with the no
copy flags set), obtain all the items in it and then have enough
information to display it. I saw the demo of your product and your
PDFView class nicely displays the PDF file in a C# application. The
problem I have to solve though us that I have to draw the PDF just like
the class you have, but with some custom additions. In one case I might
display all the non text elements on the page in gray, in another case
I have to combine two PDF pages and display differences in another
color. So I need to get into the guts of the draw code and get to all
the text, images, lines, shading etc. Is there enough information in
the reader classes for me to use to draw the text, lines etc.
-----
A:
There are couple of ways you could implement your solution using
PDFNet.

The harder way is to use ElementReader class to extract page content
(images, text, and vector art) and then render the page yourself (e.g.
using GDI+). If you would like to go down this road, I would suggest
taking a look at ElementReaderAdv sample project
(http://www.pdftron.com/net/samplecode.html#ElementReaderAdv).

Another approach is to edit the page content in memory and then use
PDFView/PDFDraw to view the resulting pages. This would save you lots
of time required to implement the custom viewer. As a starting point
for this project, you may want to take a look at ElementEdit sample
(http://www.pdftron.com/net/samplecode.html#ElementEdit). The page
editing can happen all in memory and very efficiently (also using
temporary documents etc).