PDFOne .NET
Powerful all-in-one PDF library for .NET
Compatibility
VS 2005/2008/2010/2012/2013

How To Rasterize A PDF Document In .NET

Learn to convert text, shapes, and images in a PDF page as a single graphic item using PDFOne .NET.
By V. Subhash

A page in a PDF document can contain any combination of text, images, shapes, and other page elements. Sometimes, it becomes necessary to convert all these page elements as a single image element, say, to prevent text from being copied word by word.

PDFOne .NET ProPlus edition can export PDF pages as images. It can also draw images on PDF pages. Combining these two capabilities, you can convert your existing PDF documents with heterogeneous content to PDF documents with just images. Such documents are called rasterized documents.

Here is the code to do it.

In VB In C#
Imports Gnostice.PDFOne
Imports System.Drawing.Imaging

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, _
                                  ByVal e As System.EventArgs) _
                    Handles Button1.Click

      'Create two PDFDocument instances for input and output documents
      Dim PDFDocument1 As New PDFDocument("your licence key")
      Dim PDFDocument2 As New PDFDocument("your licence key")

      Dim MetaFile1 As Metafile
      Dim PDFPage1, PDFPage2 As PDFPage
      Dim iCounter, iPageCount As Integer

      Try
        ' Load the input document and get its page count
        PDFDocument1.Load("input_doc.pdf")
        iPageCount = PDFDocument1.GetPageCount

        ' Iterate through all pages in the input document, export
        ' each page as a vector image, convert each vector image
        ' to a raster image, and add raster image to the output
        ' document.
        For iCounter = 1 To iPageCount

          ' Export current page as vector image
          MetaFile1 = PDFDocument1.GetPageMetafile(iCounter)

          ' Save meta file as a raster image
          MetaFile1.Save("image_of_page_#" & iCounter & ".jpg", _
                         ImageFormat.Jpeg)

          ' Release resources used by the vector image
          MetaFile1.Dispose()

          ' Access current page
          PDFPage1 = PDFDocument1.GetPage(iCounter)

          ' Create a new page with current page dimensions
          PDFPage2 = New PDFPage( _
                         PDFPage1.GetWidth(PDFMeasurementUnit.Inches), _
                         PDFPage1.GetHeight(PDFMeasurementUnit.Inches))
      
          ' Draw raster image on the new page
          PDFPage2.DrawImage("image_of_page_#" & iCounter & ".jpg", 0, 0)
      
          ' Add the new page to the output document
          PDFDocument2.AddPage(PDFPage2)
      
        Next
      
        ' Save rasterized output document
        PDFDocument2.Save("rasterized_output_doc.pdf")
    
    Catch ex As Exception
      MsgBox(ex.Message)
    Finally
      PDFDocument1.Close()
      PDFDocument1.Dispose()

      PDFDocument2.Close()
      PDFDocument2.Dispose()

      Me.Close()
    End Try

  End Sub
End Class

Update (April 17, 2013): Higher Resolutions

In Version 5, we introduced new overloads of the PDFDocument.GetPageMetafile method which allow you to specify a DPI value at which the contents of the PDF pages need to be exported. Using this option, you will be able to export PDF page content at high resolutions.

---o0O0o---

Our Free Online Document-Processing Tools
Gnostice Apps

Gnostice Apps provides several PDF document-processing services over the Web. It enables you to merge, split, convert, secure and redact PDF documents - all for FREE. All you need to access these services is a HTML5-capable browser such as the latest version of Firefox/Seamonkey or IE 11.

Our Developer Tools
eDocEngine VCL

A Delphi/C++Builder component suite for creating documents in over 20 formats and also export reports from popular Delphi reporting tools.

PDFtoolkit VCL

A Delphi/C++Builder component suite to edit, enhance, view, print, merge, split, encrypt, annotate, and bookmark PDF documents.

XtremePDFConverter VCL

A Delphi/C++Builder component to intelligently convert PDF to user-friendly Word RTF documents.

PDFOne .NET

A .NET PDF component suite to create, edit, view, print, reorganize, encrypt, annotate, and bookmark PDF documents in .NET applications.

XtremeDocumentStudio .NET

Multi-format document-processing component suite for .NET developers

PDFOne (for Java™)

A Java™ PDF component suite to create, edit, view, print, reorganize, encrypt, annotate, bookmark PDF documents in Java™ applications.

XtremeFontEngine (for Java)

Java font engine to render glyphs from Type 1, Type 2 (CFF), and TrueType fonts

Our Office Productivity Applications
Free PDF Reader

A free, fast, and portable application for viewing, printing and converting PDF documents.

Privacy | Legal | Feedback | Newsletter | Resellers © 2002-2014 Gnostice Information Technologies Private Limited. All rights reserved.

This site is best viewed on a screen with minimum resolution of 1152 x 864 pixels. Windows XP users are advised to use Microsoft ClearType Tuning for optimal experience. Also, please use the latest version of a standards-compliant browser such as Firefox, Opera, or Dragon (Chromium).