IronSoftware
  • Products
    Create, read, and edit PDFs Image to text in 127 languages Read and write QR & Barcodes No Office Interop required Extract structured data from websites 5 for the Price of 2 All 5 .NET product licenses from $998 Save 60% with Iron Suite Iron Suites - Donate $50
  • About Us
  • Contact Us

205 N. Michigan Ave. Chicago, IL 60611, USA +1 (312) 500-3060

  • Home
  • Licensing
  • EULA
  • Support & Update Extensions
  • Get Started
  • Features
  • Code Examples
  • Tutorials
  • FAQ
  • Troubleshooting
  • API Reference
  • Search
  • Free NuGet Download
IronPDF Library for C# IronPDF Library for C#
  • Home
  • Licensing
    • Licensing
    • EULA
    • Support & Update Extensions
  • Docs
    • Search
    • Get Started
    • Features
    • Code Examples
    • Tutorials
    • FAQ
    • Troubleshooting
    • API Reference
    • Search
  • Search
  • Free NuGet Download Total downloads: 3,793,736
Message's icon

PDF Generator C#

  • # HTML to PDF Generation for C# and VB .NET
  • # Generate, read, and edit PDFs in .NET Applications
  • # See the C# PDF Library, compared to iTextSharp
Free NuGet Download Total downloads: 3,793,736

Or download the DLL directly here

Trusted by:

Trusted by: NASA, Lego, Hertz, 3M

Examples

  • HTML PDF Generator
  • URL PDF Generator
  • ASPX PDF Generator
  • HTML PDF Generator
  • Images PDF Generator
  • PDF to Images
  • Headers & Footers
  • PDF Forms
  • Responsive HTML to PDF
  • PDF Generation Settings
See All 45 Code Examples
HTML PDF Generator Run See All 45 Code Examples
 // PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer

var Renderer = new IronPdf.ChromePdfRenderer();

// Create a PDF from an existing HTML file using C#
using var pdf = Renderer.RenderHTMLFileAsPdf("example.html");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer

Private Renderer = New IronPdf.ChromePdfRenderer()

' Create a PDF from an existing HTML file using C#
Private var As using

' Export to a file or Stream
pdf.SaveAs("output.pdf")
Install-Package IronPdf
URL PDF Generator Run See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Create a PDF from a URL or local file path
using var pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Export to a file or Stream
pdf.SaveAs("url.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

' Create a PDF from a URL or local file path
Private var As using

' Export to a file or Stream
pdf.SaveAs("url.pdf")
Install-Package IronPdf
ASPX PDF Generator See All 45 Code Examples
private void Form1_Load(object sender, EventArgs e)
{

IronPdf.AspxToPdf.RenderThisPageAsPdf();
//Changes the ASPX output into a pdf instead of HTML

}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)

IronPdf.AspxToPdf.RenderThisPageAsPdf()
'Changes the ASPX output into a pdf instead of HTML

End Sub
Install-Package IronPdf
HTML PDF Generator Run See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Create a PDF from a HTML string using C#
using var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");


/****** Advanced Example with HTML Assets ******/

// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
using var myAdvancedPdf = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

' Create a PDF from a HTML string using C#
Private var As using

' Export to a file or Stream
pdf.SaveAs("output.pdf")


'''**** Advanced Example with HTML Assets *****

' Load external html assets: images, css and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
Using myAdvancedPdf = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
	pdf.SaveAs("html-with-assets.pdf")
End Using
Install-Package IronPdf
Images PDF Generator See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;
using System.IO;
using System.Linq;

// One or more images as IEnumerable. This example selects all JPEG images in a specific 'assets' folder.
var ImageFiles = System.IO.Directory.EnumerateFiles("assets").Where(f => f.EndsWith(".jpg") || f.EndsWith(".jpeg"));

// Converts the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs("composite.pdf");

// Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
' PM> Install-Package IronPdf
Imports IronPdf
Imports System.IO
Imports System.Linq

' One or more images as IEnumerable. This example selects all JPEG images in a specific 'assets' folder.
Private ImageFiles = System.IO.Directory.EnumerateFiles("assets").Where(Function(f) f.EndsWith(".jpg") OrElse f.EndsWith(".jpeg"))

' Converts the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs("composite.pdf")

' Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
Install-Package IronPdf
PDF to Images See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;
using System.Drawing;

//Example rendering PDF documents to Images or Thumbnails

using var Pdf = PdfDocument.FromFile("Example.pdf");

//Extract all pages to a folder as image files
Pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

//Dimensions and page ranges may be specified
Pdf.RasterizeToImageFiles(@"C:\image\folder\thumbnail_*.jpg", 100, 80);


//Extract all pages as System.Drawing.Bitmap objects
System.Drawing.Bitmap[] pageImages = Pdf.ToBitmap();
' PM> Install-Package IronPdf
Imports IronPdf
Imports System.Drawing

'Example rendering PDF documents to Images or Thumbnails

Private var As using

'Extract all pages to a folder as image files
Pdf.RasterizeToImageFiles("C:\image\folder\*.png")

'Dimensions and page ranges may be specified
Pdf.RasterizeToImageFiles("C:\image\folder\thumbnail_*.jpg", 100, 80)


'Extract all pages as System.Drawing.Bitmap objects
Dim pageImages() As System.Drawing.Bitmap = Pdf.ToBitmap()
Install-Package IronPdf
Headers & Footers See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Add a header to every page easily
Renderer.RenderingOptions.FirstPageNumber = 1; // use 2 if a coverpage  will be appended
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.Font = IronPdf.Font.FontTypes.Helvetica;
Renderer.RenderingOptions.TextHeader.FontSize = 12;

// Add a footer too
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.Font = IronPdf.Font.FontTypes.Arial;
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

// Mergable fields are:
// {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

' Add a header to every page easily
Renderer.RenderingOptions.FirstPageNumber = 1 ' use 2 if a coverpage  will be appended
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
Renderer.RenderingOptions.TextHeader.Font = IronPdf.Font.FontTypes.Helvetica
Renderer.RenderingOptions.TextHeader.FontSize = 12

' Add a footer too
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.Font = IronPdf.Font.FontTypes.Arial
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"

' Mergable fields are:
' {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
Install-Package IronPdf
PDF Forms See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Step 1.  Creating a PDF with editable forms from HTML using form and input tags

var FormHtml = @"
            <html>
                <body>
                    <h2>Editable PDF  Form</h2>
                    <form>
                      First name: <br> <input type='text' name='firstname' value=''> <br>
                      Last name: <br> <input type='text' name='lastname' value=''>
                    </form>
                </body>
            </html>";

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf");

// Step 2. Reading and Writing PDF form values.
using var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

//Set and Read the value of the "firstname" field
var FirstNameField = FormDocument.Form.GetFieldByName("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

//Set and Read the value of the "lastname" field
IronPdf.Forms.FormField LastNameField = FormDocument.Form.GetFieldByName("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

FormDocument.SaveAs("FilledForm.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Step 1.  Creating a PDF with editable forms from HTML using form and input tags

Private FormHtml = "
            <html>
                <body>
                    <h2>Editable PDF  Form</h2>
                    <form>
                      First name: <br> <input type='text' name='firstname' value=''> <br>
                      Last name: <br> <input type='text' name='lastname' value=''>
                    </form>
                </body>
            </html>"

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf")

' Step 2. Reading and Writing PDF form values.
Using FormDocument = PdfDocument.FromFile("BasicForm.pdf")
	
	'Set and Read the value of the "firstname" field
	Dim FirstNameField = FormDocument.Form.GetFieldByName("firstname")
	FirstNameField.Value = "Minnie"
	Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value)
	
	'Set and Read the value of the "lastname" field
	Dim LastNameField As IronPdf.Forms.FormField = FormDocument.Form.GetFieldByName("lastname")
	LastNameField.Value = "Mouse"
	Console.WriteLine("LastNameField value: {0}", LastNameField.Value)
	
	FormDocument.SaveAs("FilledForm.pdf")
End Using
Install-Package IronPdf
Responsive HTML to PDF See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();

//Choose Screen or Print CSS media
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;

//Set the width of the responsive virtual browser window in pixels
Renderer.RenderingOptions.ViewPortWidth = 1280;

// Render an HTML document or snippet as a string
var PDF = Renderer.RenderHTMLFileAsPdf("Assets/Responsive.html");
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

'Choose Screen or Print CSS media
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen

'Set the width of the responsive virtual browser window in pixels
Renderer.RenderingOptions.ViewPortWidth = 1280

' Render an HTML document or snippet as a string
Dim PDF = Renderer.RenderHTMLFileAsPdf("Assets/Responsive.html")
Install-Package IronPdf
PDF Generation Settings See All 45 Code Examples
// PM> Install-Package IronPdf
using IronPdf;

// Instantiate Renderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Many rendering options to use to customize!
Renderer.RenderingOptions.SetCustomPaperSizeInInches(12.5, 20);
Renderer.RenderingOptions.PrintHtmlBackgrounds = true;
Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape;
Renderer.RenderingOptions.Title = "My PDF Document Name";
Renderer.RenderingOptions.EnableJavaScript = true;
Renderer.RenderingOptions.RenderDelay = 50; // in milliseconds
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
Renderer.RenderingOptions.FitToPaperWidth = false;
Renderer.RenderingOptions.Zoom = 100;
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Supports margin customization!
Renderer.RenderingOptions.MarginTop = 40;  //millimeters
Renderer.RenderingOptions.MarginLeft = 20;  //millimeters
Renderer.RenderingOptions.MarginRight = 20;  //millimeters
Renderer.RenderingOptions.MarginBottom = 40;  //millimeters

// Can set FirstPageNumber if you have a coverpage
Renderer.RenderingOptions.FirstPageNumber = 1; // use 2 if a coverpage will be appended

// Settings have been set, we can render:
Renderer.RenderHTMLFileAsPdf("assets/wikipedia.html").SaveAs("output/my-content.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Instantiate Renderer
Private Renderer = New IronPdf.ChromePdfRenderer()

' Many rendering options to use to customize!
Renderer.RenderingOptions.SetCustomPaperSizeInInches(12.5, 20)
Renderer.RenderingOptions.PrintHtmlBackgrounds = True
Renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Landscape
Renderer.RenderingOptions.Title = "My PDF Document Name"
Renderer.RenderingOptions.EnableJavaScript = True
Renderer.RenderingOptions.RenderDelay = 50 ' in milliseconds
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
Renderer.RenderingOptions.FitToPaperWidth = False
Renderer.RenderingOptions.Zoom = 100
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True

' Supports margin customization!
Renderer.RenderingOptions.MarginTop = 40 'millimeters
Renderer.RenderingOptions.MarginLeft = 20 'millimeters
Renderer.RenderingOptions.MarginRight = 20 'millimeters
Renderer.RenderingOptions.MarginBottom = 40 'millimeters

' Can set FirstPageNumber if you have a coverpage
Renderer.RenderingOptions.FirstPageNumber = 1 ' use 2 if a coverpage will be appended

' Settings have been set, we can render:
Renderer.RenderHTMLFileAsPdf("assets/wikipedia.html").SaveAs("output/my-content.pdf")
Install-Package IronPdf

Explore the code and run it to see the sample PDFs

IronPDF

The C# PDF solution you've been looking for.

.Net Developer Support

Support

Open a support ticket with our development team.

Ask a Question
C# API Reference and Get Started Tutorials

Documentation

View code examples and tutorials.

Get Started
C# Library Licensing

Licensing

Free for development. License from $499.

See Licenses
Install The C# PDF library

Try IronPDF Free

Get set up in 5 minutes.

Download
Try IronPDF for Free
Get Set Up in 5 Minutes
C# Nuget Library for PDF
Install with NuGet
Version: 2022.7
Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. In Solution Explorer, right-click References, Manage NuGet Packages
  2. Select Browse and search "IronPdf"
  3. Select the package and install
C# PDF DLL
Download DLL
Version: 2022.7
Download Now
Manually install into your project
  1. Download and unzip IronPDF to a location such as ~/Libs within your Solution directory
  2. In Visual Studio Solution Explorer, right click References. Select Browse, "IronPdf.dll"
Licenses from $499

Have a question? Get in touch with our development team.

Now that you’ve downloaded IronPDF
Want to deploy IronPDF to a live project for FREE?
Not ready to buy?

Want to deploy IronPDF to a live project for FREE?

What’s included?
30 days of fully-functional product
Test and share in a live environment
No watermarks in production
Get your free 30-day Trial Key instantly.
Thank you.
If you'd like to speak to our licensing team:
Schedule a call
Have a question? Get in touch with our development team.
No credit card or account creation required
Your Trial License Key has been emailed to you.
Not ready to buy?
Thank you.
View your license options:
Thank you.
If you'd like to speak to our licensing team:
View License
Schedule a call
Have a question? Get in touch with our development team.
Have a question? Get in touch with our development team.
Want to deploy IronPDF to a live project for FREE?
Not ready to buy?

Want to deploy IronPDF to a live project for FREE?

What’s included?
30 days of fully-functional product
Test and share in a live environment
No watermarks in production
Get your free 30-day Trial Key instantly.
Thank you.
If you'd like to speak to our licensing team:
Schedule a call
Have a question? Get in touch with our development team.
No credit card or account creation required
Your Trial License Key has been emailed to you.
Not ready to buy?
Download IronPDF free to apply
your Trial Licenses Key
Thank you.
If you'd like to speak to our licensing team:
Install with NuGet View Licenses
Schedule a call
Licenses from $499. Have a question? Get in touch.
Have a question? Get in touch with our development team.
Free 30-Day Trial Key

Fully-functional product, get the key instantly

IronPDF for .NET

When you need your PDF to look like HTML, fast.

Search

Documentation

  • Code Examples
  • API Reference
  • FAQ
  • Features
  • Blog
  • Credits
  • Product Brochure

Tutorials

  • Get Started
  • HTML to PDF
  • ASPX to PDF
  • VB.NET to PDF

Licensing

  • Buy a License
  • Support Extensions
  • Resellers
  • License Keys
  • EULA

Try IronPDF Free

  • Download on NuGet
  • Download DLL
  • 30-Day Trial License

When you need your PDF to look like HTML, fast.

Tesseract 5 OCR in the languages you need, We support 127+.

When you need to read, write, and style, QR & Barcodes, fast.

The Excel API you need, without the Office Interop hassle.

The power you need to scrape & output clean, structured data.

The complete .NET Suite for your office.

  • IRONSUITE
  • |
  • IRONPDF
  • IRONOCR
  • IRONBARCODE
  • IRONXL
  • IRONWEBSCRAPER
IronSoftware
205 N. Michigan Ave. Chicago, IL 60611 USA +1 (312) 500-3060
  • About Us
  • Contact Us

Supporting Teamseas

Copyright © Iron Software LLC 2013-2022

  • Terms
  • Privacy

Thank you!

Your license key has been delivered to the email provided. Contact us

48-Hour Upgrade Offer:

Save 50% on a
Professional Upgrade

Go Professional to cover 10 developers
and unlimited projects.

Upgrade to Professional

Upgrade

Professional

$600 USD

$299 USD


  • 10 developers
  • 10 locations
  • 10 projects