Converting HTML to PDF
HTML content can render differently across browsers, devices, and viewport sizes. Converting HTML to PDF gives you a fixed output format for sharing, archiving, and printing.
Use this workflow to:
- Preserve layout and styling in a stable document format
- Distribute web content for offline access
- Archive rendered pages for audit or compliance workflows
How Nutrient supports this workflow
Nutrient .NET SDK converts HTML to PDF through a single API call. Nutrient renders the HTML through Chrome, so the PDF preserves the page layout, fonts, images, and styling.
HTML-to-PDF conversion on Linux relies on Chrome for rendering. If you run this workflow in Docker on Linux, make sure the container includes Chrome and runs as a non-root user. For the packaged Docker setup, refer to the running Chrome-based conversions in Docker guide.
You don’t need to handle:
- HTML parsing and layout
- Rendering fonts, images, and CSS styling
- Page sizing and pagination
Use the SDK API to handle the conversion in your application.
Complete implementation
The following example converts a local input.html file to PDF. This line sets up the C# application. The using directive brings in the Nutrient SDK namespace:
using Nutrient;This line opens the HTML file. The using declaration(opens in a new tab) ensures the document is automatically closed when it goes out of scope, preventing resource leaks:
try{ using Document document = Document.Open("input.html");This block exports the file to PDF and saves it as output.pdf. The try-catch block handles potential errors using NutrientException:
document.ExportAsPdf("output.pdf"); Console.WriteLine("Successfully converted to output.pdf");}catch (NutrientException e){ Console.Error.WriteLine($"Error: {e.Message}"); Environment.Exit(1);}Summary
The conversion has two steps:
- Open the HTML file.
- Export it as PDF.
Nutrient renders the HTML through Chrome and writes the result to output.pdf, so you don’t need to implement format-specific rendering logic.