Sample code · C#
using System; using System.Collections.Generic; using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.AspNetCore.Mvc.RazorPages; using SelectPdf.Universal; namespace SelectPdf.Samples.Pages { public class ConvertFromJsModel : PageModel { public void OnGet() { DdlRenderingEngine = "Chromium"; TxtUrl = Helper.WWWRoot(Request) + Url.Content("~/files/js-conversion.html"); DdlStartupMode = "Manual"; } [BindProperty] public string TxtUrl { get; set; } [BindProperty] public string DdlRenderingEngine { get; set; } = "Chromium"; public List<SelectListItem> RenderingEngines { get; } = new List<SelectListItem> { new SelectListItem { Value = "Chromium", Text = "Chromium" }, }; [BindProperty] public string DdlStartupMode { get; set; } public List<SelectListItem> StartupModes { get; } = new List<SelectListItem> { new SelectListItem { Value = "Automatic", Text = "Automatic" }, new SelectListItem { Value = "Manual", Text = "Manual" }, }; [BindProperty] public string TxtTimeout { get; set; } public IActionResult OnPost() { RenderingEngine renderingEngine = SampleForm.ParseEnum(DdlRenderingEngine, RenderingEngine.Chromium); // instantiate a html to pdf converter object HtmlToPdf converter = new HtmlToPdf(); // set startup mode converter.Options.RenderingEngine = renderingEngine; converter.Options.StartupMode = SampleForm.ParseEnum(DdlStartupMode, HtmlToPdfStartupMode.Manual); // set timeout int timeout = 10; try { timeout = Convert.ToInt32(TxtTimeout); } catch { } converter.Options.NavigationTimeout = Math.Min(timeout, Startup.NavigationTimeout); // 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; } } }