asp.net html导出pdf,ASP.NET通过第三方程序将网页导出成PDF文件

建帖之前先感谢@刘为民 同学提供的技术支持,刘同学在项目过程中率先使用了此方法。此帖抛砖引玉,希望后续遇到此类需求的同学们读完此贴后能顺利解决项目需求。

项目需求如下图,需要将页面中蓝色线框的部分导出为PDF文件,并且样式布局保持和页面中呈现的一致:

d6b772ba92d0366a70bbb4ac05c36a0f.png

步骤一:将此页面复制一份出来,只保留蓝色线框中要导出的部分,生成PDF时将以此页面的样式布局为样本,如下图:

703f516d518162aeb719a877b86392a3.png

步骤二:下载以下附件,解压后的“wkhtmltopdf.exe“文件放入网站根目录,“PDFHelper.cs”文件放入网站App_Code目录:

步骤三:在导出按钮的事件中加入以下代码:

var url = "http://edp.snai.edu/Courses/CoursesData.aspx"; //要抓取下来的页面地址

var fileName = "全年课表.pdf"; //导出的文件名

var filePath = UploadFilePath + fileName; //文件保存的路径

var fileDir = Server.MapPath(filePath);

if (File.Exists(fileDir))

{

FileInfo file = new FileInfo(fileDir);

if (file.CreationTime 

{

File.Delete(fileDir);

}

}

PdfHelper.HtmlToPdf(url, fileDir);

Response.Redirect(filePath); //页面跳转到PDF地址,或输出PDF文件

在项目中测试此功能,在以上代码执行完之后,会在服务器上生成PDF文件,并自动跳转至PDF文件的路径

特别注明:解决问题的方法有千千万万个,大家千万别为了其中某一个方法而陷入死胡同,若此方法未能解决你在项目中遇到的问题,请另辟途径,并记录下你的光辉战绩,以指引后来人~

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值