Whitespace is only "ignorable" if you have a schema which describes the document. (Your code doesn't validate, so you don't have a schema.) Otherwise there is no way for the parser to tell which whitespace you are not interested in.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com