URL2PDF for ASP.NET
Converts HTML websites to PDF instantly using an ASP.NET Class Library and a command-line tool in the background.
- Generate PDF files from Internet pages
- Multiple options provided in the Class Library, in order to encapsulate complexity.
- If your application is hosted, make sure your web host allows running an executable process within the web application. For more information please comment or send me a message before you buy.
After my research for PDF conversion tools (which is a part of the documentation), I found that one of the best, up-to-date, usable solution that doesn’t cost hundreads of dollars, is wkhtmltopdf.
This is an assembly that wrapps the windows binaries.
Source code and demo project are provided.
Use this for
- creating pdf buttons to convert the current page (with Request.Url.ToString())
- converting a specific internal of external location
- creating a printable version of your site/page in pdf, tweaking the print.css
- changed main method name from OpenPDFfromURL to GenerateAndGetLocation
- changed return value from script tag to relative url only (/pdf/12345.pdf). ”.pdf” extension still already added by method. this requires more code on the front end but enables working with the url as desired. script tags are automatically added by the “true” paremeter of RegisterStartupScript
- included two way example
- auto generation and open (popups may be blocked at first attempt)
- two button. one generates the pdf. another opens the pdf in a new window. no popup issues
- or just open in the same window!
string location = pdf.GenerateAndGetLocation();
string script = “window.open(’” + location + ”’, ‘_blank’);”;
ClientScript.RegisterStartupScript(this.GetType(), “pdfscript”, script, true);
ClientScript.RegisterStartupScript(this.GetType(), “pdfscript”, “window.open(’” + pdf.GenerateAndGetLocation()+ ”’, ‘_blank’);”, true);
- main method, OpenPDFfromURL, returns a script tag
- usage: Response.Write(pdf.OpenPDFfromURL());
Future improvement areas
- Try to overcome some browsers popup blocking and user action required to enable it
Thirt party application problematic areas
- may show login page if site requires authentication/redirection
- may show blank area for iframes