Ответ 1
Ответ можно найти в списке часто задаваемых вопросов в формате PDFsharp: http://www.pdfsharp.net/wiki/PDFsharpFAQ.ashx#Can_PDFsharp_show_PDF_files_Print_PDF_files_Create_images_from_PDF_files_3
PDFsharp создает PDF файлы, но не может их отобразить.
Вызов
Bitmap b = new Bitmap((int) pdfp.Width.Point, (int) pdfp.Height.Point, xgfx.Graphics);
не инициализирует никакие биты растрового изображения и ничего не копирует из объекта Graphics, кроме параметра DPI объекта Graphics. Графические объекты рисуют вещи, но они не помнят, что они нарисовали, и они не могут воссоздать чертежи при вызове new Bitmap(...)
. Это не работает с классом Graphics от Microsoft, это также не работает с классом XGraphics из PDFsharp.
Класс XGraphics из PDFsharp может использоваться для рисования на страницах PDF и его можно использовать для рисования на растровых изображениях, на принтере или на экране - он может рисовать на страницах PDF и на любом DC, который вы можете получить из Windows, То же самое касается MigraDoc.
Поэтому, если вы хотите создавать PDF файлы и растровые изображения с одним и тем же содержимым, могут помочь PDFsharp и MigraDoc.
Но PDFsharp не предоставляет никакого способа отображения страницы PDF в растровое изображение.