SelectPdf Free Html To Pdf Converter for .NET Core - Getting Started with Html to Pdf Converter - C# / ASP.NET 10 Sample

This sample shows the simplest code that can be used to convert an url to pdf using SelectPdf Pdf Library for .NET.

SelectPdf.Universal uses the Chromium rendering engine (HTML5/CSS3/JS), available on all .NET platforms and fully supported on Azure Web Apps.

Url:


Rendering Engine:


Sample code · C#
using System;
using System.Collections.Generic;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.Mvc.Rendering;
using SelectPdf.Universal;

namespace SelectPdf.Samples.Pages
{
    public class HtmlToPdfConverterModel : PageModel
    {
        public void OnGet()
        {
            DdlRenderingEngine = "Chromium";
        }

        [BindProperty]
        public string TxtUrl { get; set; }

        [BindProperty]
        public string DdlRenderingEngine { get; set; }

        public List<SelectListItem> RenderingEngines { get; } = new List<SelectListItem>
        {
            new SelectListItem { Value = "Chromium", Text = "Chromium" },
        };

        public IActionResult OnPost()
        {
            // read parameters from the webpage
            RenderingEngine renderingEngine =
                SampleForm.ParseEnum(DdlRenderingEngine, RenderingEngine.Chromium);

            // instantiate a html to pdf converter object
            HtmlToPdf converter = new HtmlToPdf();
            converter.Options.NavigationTimeout = Startup.NavigationTimeout;

            // set the rendering engine
            converter.Options.RenderingEngine = renderingEngine;

            // create a new pdf document converting an url
            PdfDocument doc = converter.ConvertUrl(TxtUrl);

            // save pdf document
            byte[] pdf = doc.Save();

            // close pdf document
            doc.Close();

            // return resulted pdf document
            FileResult fileResult = new FileContentResult(pdf, "application/pdf");
            fileResult.FileDownloadName = "Document.pdf";
            return fileResult;

        }
    }
}