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 ConversionDelayModel : PageModel { public void OnGet() { DdlRenderingEngine = "Chromium"; } [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 int delay { get; set; } [BindProperty] public int timeout { get; set; } public IActionResult OnPost() { RenderingEngine renderingEngine = SampleForm.ParseEnum(DdlRenderingEngine, RenderingEngine.Chromium); // instantiate a html to pdf converter object HtmlToPdf converter = new HtmlToPdf(); // specify the number of seconds the conversion is delayed converter.Options.RenderingEngine = renderingEngine; converter.Options.ConversionDelay = delay; // set the page timeout 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; } } }