Test in production without watermarks.
Works wherever you need it to.
Get 30 days of fully functional product.
Have it up and running in minutes.
Full access to our support engineering team during your product trial
Generating PDF documents programmatically can be complex due to their complexity, especially when including images, tables, text, formatting, and other features.
The main challenge is to figure out how to convert a plain text document into a PDF format. Numerous methods can be used, but choosing one that will maintain the formatting of the original document is essential.
In this tutorial, I'll compare Progress Software Corporation's Telerik PdfProcessing library with Iron Software's IronPDF in how well both can generate PDF documents.
Import
method to load existing HTML file in C#Export
methodTelerik PdfProcessing Documentation, part of Progress's portfolio of document processing applications, allows you to create PDFs and export them without writing any code. It has features such as text blocks, images, forms, tables, import, and export. In addition, the library offers features that are perfect for flow-like editing. The PdfProcessing app is available for web, desktop, and mobile platforms.
IronPDF is a .NET PDF library that can generate PDFs without requiring Adobe Acrobat or other third-party software. The library can create PDFs from scratch or export existing .NET components (like ASP.NET official site web pages, WPF user interfaces, etc.) into PDF files.
In this section, I'll cover how we can install IronPDF and Telerik Document Processing libraries.
To create a PDF document from HTML using the Telerik Document Processing suite, we have to install three libraries:
You can install these libraries using the NuGet Package Manager.
Telerik and Kendo UI Libraries
You can install IronPDF using three ways:
For installation with the Package Manager Console, you'll need to write the following command in the console.
Install-Package IronPdf
This command will install the latest IronPDF library version in the project. Of course, you can always check the newest version of IronPDF on the IronPDF's NuGet page.
Telerik supports converting HTML to PDF using the RadFlowDocument
library addon. It can convert an HTML document containing an HTML string to a PDF document.
You can use the following code for converting HTML to PDF using Telerik.
using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;
// Create an HTML format provider for importing HTML files.
HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content of an HTML file.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));
// Create a PDF format provider for exporting the document.
Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
// Export the document to a byte array.
byte[] pdfBytes = pdfProvider.Export(document);
// Save the PDF byte array to a file.
File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
using Telerik.Windows.Documents.Flow.FormatProviders.Html;
using Telerik.Windows.Documents.Flow.Model;
// Create an HTML format provider for importing HTML files.
HtmlFormatProvider htmlProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider();
// Create a document instance from the content of an HTML file.
RadFlowDocument document = htmlProvider.Import(File.ReadAllText(@"C:\HTML Website\website\index.html"));
// Create a PDF format provider for exporting the document.
Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider pdfProvider = new Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider();
// Export the document to a byte array.
byte[] pdfBytes = pdfProvider.Export(document);
// Save the PDF byte array to a file.
File.WriteAllBytes(@"C:/test.pdf", pdfBytes);
Imports Telerik.Windows.Documents.Flow.FormatProviders.Html
Imports Telerik.Windows.Documents.Flow.Model
' Create an HTML format provider for importing HTML files.
Private htmlProvider As HtmlFormatProvider = New Telerik.Windows.Documents.Flow.FormatProviders.Html.HtmlFormatProvider()
' Create a document instance from the content of an HTML file.
Private document As RadFlowDocument = htmlProvider.Import(File.ReadAllText("C:\HTML Website\website\index.html"))
' Create a PDF format provider for exporting the document.
Private pdfProvider As New Telerik.Windows.Documents.Flow.FormatProviders.Pdf.PdfFormatProvider()
' Export the document to a byte array.
Private pdfBytes() As Byte = pdfProvider.Export(document)
' Save the PDF byte array to a file.
File.WriteAllBytes("C:/test.pdf", pdfBytes)
The above code is somewhat complex. You'll first need to create an HtmlFormatProvider
and a RadFlowDocument
. Import the HTML file using the Import
function of the HtmlFormatProvider
, and use the returned RadFlowDocument
object to produce a PdfFormatProvider
. Finally, use the WriteAllBytes
method on the PdfFormatProvider
to export the PDF file to a specific location.
The output generated by Telerik is not good. Telerik didn't retain the UI of the HTML document or load any of the images.
Telerik Output
IronPDF can generate PDF using HTML files, HTML strings, and URLs.
Use the following code to create a PDF document using an HTML file.
using IronPdf;
// Create an instance of ChromePdfRenderer
var IronRenderer = new ChromePdfRenderer();
// Set the renderer's options to fit to the specified paper mode.
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;
// Render the HTML file as a PDF document.
var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");
// Save the rendered PDF document to a file.
pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
using IronPdf;
// Create an instance of ChromePdfRenderer
var IronRenderer = new ChromePdfRenderer();
// Set the renderer's options to fit to the specified paper mode.
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth;
// Render the HTML file as a PDF document.
var pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf(@"C:\HTML Website\website\index.html");
// Save the rendered PDF document to a file.
pdfFromHtmlFile.SaveAs(@"C:/IronPDF Test.pdf");
Imports IronPdf
' Create an instance of ChromePdfRenderer
Private IronRenderer = New ChromePdfRenderer()
' Set the renderer's options to fit to the specified paper mode.
IronRenderer.RenderingOptions.FitToPaperMode = IronPdf.Engines.Chrome.FitToPaperModes.FixedPixelWidth
' Render the HTML file as a PDF document.
Dim pdfFromHtmlFile = IronRenderer.RenderHtmlFileAsPdf("C:\HTML Website\website\index.html")
' Save the rendered PDF document to a file.
pdfFromHtmlFile.SaveAs("C:/IronPDF Test.pdf")
The RenderHtmlFileAsPdf
method is used to generate a PDF from the HTML file. This function reads all content from the HTML file, loading the related CSS and JavaScript files. The output of the RenderHtmlFileAsPdf
method is displayed below.
IronPDF HTML to PDF
IronPDF generates PDFs from HTML very beautifully. This result is different and better than the Telerik-generated PDF.
You can use the following code to generate a PDF from a URL.
using IronPdf.Rendering;
using IronPdf;
// Create an instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set the paper size for rendering the PDF.
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;
// Render the specified URL as a PDF document.
PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
// Save the rendered PDF document to a file.
myPdf.SaveAs(@"C:/dotnet.pdf");
using IronPdf.Rendering;
using IronPdf;
// Create an instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set the paper size for rendering the PDF.
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2;
// Render the specified URL as a PDF document.
PdfDocument myPdf = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/");
// Save the rendered PDF document to a file.
myPdf.SaveAs(@"C:/dotnet.pdf");
Imports IronPdf.Rendering
Imports IronPdf
' Create an instance of ChromePdfRenderer
Private renderer As New ChromePdfRenderer()
' Set the paper size for rendering the PDF.
renderer.RenderingOptions.PaperSize = PdfPaperSize.A2
' Render the specified URL as a PDF document.
Dim myPdf As PdfDocument = renderer.RenderUrlAsPdf("https://dotnet.microsoft.com/en-us/")
' Save the rendered PDF document to a file.
myPdf.SaveAs("C:/dotnet.pdf")
The RenderUrlAsPdf
function converts a webpage's URL into a PDF. It waits to load all related files before rendering, producing extraordinary results. It preserves all colors, designs, and UI. You can see the output below.
URL to PDF
You can get more tutorials about IronPDF and see them in action on the IronPDF Tutorial Page.
As we've seen the output UI for ASP.NET results of IronPDF and Telerik, we can say that Telerik is not a good option for HTML to PDF conversions, as its rendering quality is not good. You can see the difference between the outputs of IronPDF and Telerik below.
Output Comparison
In the above image, you can see the clear difference between the standard outputs of IronPDF and Telerik. Let's compare the output on the basis of features.
The rendering quality of Telerik is poor. The PDFs that it renders have poor formatting, failing to preserve the original styles of the document. On the other hand, IronPDF has outstanding rendering quality, retaining every aspect of the source document.
Telerik doesn't support external files. Moreover, it doesn't support JavaScript.
Conversely, IronPDF has full support for internal and external CSS and JavaScript declarations. Processing of JavaScript can be toggled on or off as required with IronPDF.
In summation, the following are some additional limitations of Telerik PdfProcessing:
IronPDF's chief features are:
There are many other features of IronPDF. You can visit the IronPDF Features Page for the best information.
IronPDF Features
In this article, we compared IronPDF with Telerik PdfDocument Processing libraries and found that IronPDF is far better than the Telerik library for HTML to PDF conversion.
IronPDF is an excellent library for all PDF-related operations. You can create, edit, and modify PDF files in all the latest .NET and .NET Core frameworks. Visit the IronPDF Licensing Page for more information about the distribution and licensing of IronPDF product bundles.
Telerik PdfProcessing is a library from Progress Software that allows you to create and export PDFs without writing any code. It supports features like text blocks, images, forms, tables, import, and export.
IronPDF offers superior rendering quality compared to Telerik PdfProcessing. It supports external CSS and JavaScript files, URL-to-PDF conversion, and retains the original document's styles and UI better than Telerik.
You can install Telerik Document Processing libraries using the NuGet Package Manager. The required libraries include Telerik.Documents.Core.Trial, Telerik.Documents.Flow.FormatProviders.Doc.Trial, Telerik.Documents.Flow.FormatProviders.Pdf.Trial, and Telerik.Documents.Flow.Trial.
IronPDF can be installed using the NuGet Package Manager Console, the NuGet Visual Studio GUI, or by downloading the IronPDF DLL file for manual installation.
No, Telerik PdfProcessing does not support external CSS and JavaScript files, which limits its ability to render HTML documents accurately.
IronPDF supports URL-to-PDF and HTML file-to-PDF conversion, handles external files like images, CSS, and JS, and provides excellent rendering quality. It also has extensive documentation and automatically loads all necessary files without external libraries.
Telerik Document Processing does not support external CSS or JavaScript, images do not render in PDFs, it doesn't support URL-to-PDF conversion, and the rendering quality is generally poor.
To convert HTML to PDF using IronPDF, you use the ChromePdfRenderer class. You can render HTML files or URLs as PDFs and save the documents to your desired location using IronPDF's methods.
IronPDF is preferred over Telerik for HTML to PDF conversion because it provides better rendering quality, supports external files, and offers more comprehensive features for preserving the original document's style and UI.
To install IronPDF via the Package Manager Console, use the command 'Install-Package IronPdf'.