HTML to PDF pechkin
1. Goto Nuget 下载 Pechkin 控件
2. 创建需要打印的的PDF controller 和 Action, 这里会调用其他页面的内容进行打印。
public ActionResult ExportPDF(int id=0)
{
SynchronizedPechkin sc = new SynchronizedPechkin(new GlobalConfig()
.SetMargins(new Margins() { Left = 0, Right = 0, Top = 0, Bottom = 0 })); //设置边距 ObjectConfig oc = new ObjectConfig(); string sCurrentUrl = Request.Url.ToString();
string sBook = sCurrentUrl.Substring(0, sCurrentUrl.IndexOf("/Book"));
string sPath = sBook + "/Book/BookToPdf/" + id; oc.SetPrintBackground(true).SetRunJavascript(true).SetScreenMediaType(true)
.SetLoadImages(true)
.SetPageUri(sPath); byte[] buf = sc.Convert(oc); return File(buf, "application/pdf", "download.pdf"); }
3. 调用页面代码
public ActionResult BookToPdf(int id=0)
{
BookService BookBS = new BookService();
var sModel = BookBS.GetBook(id);
ViewData["BookModel"] = sModel;
return View();
}
@model List<LibrarySys.Web.Models.BookModel>
@{
Layout = null;
}
<table class="table table-hover table-bordered">
<thead>
<tr>
<td class="col-md-1">
<p>图书编码</p>
<p>出版日期</p>
</td>
<td>名称</td>
<td>价格</td>
<td class="col-md-1">作者</td>
<td>出版社</td>
<td>操作</td>
</tr>
</thead>
<tbody>
@foreach (var item in Model)
{
<tr>
<td>
<p>@item.BookNumber</p>
<p>@item.BookPublish.ToShortDateString()</p>
</td>
<td><a href="/Book/BookEdit/@item.BookId" target="_self">@item.BookName</a></td>
<td>@item.BookPrice</td>
<td>@item.BookAuthor</td>
<td>@item.Publisher</td>
<td><a href="/Book/ExportPDF/@item.BookId" class="btn btn-xs btn-primary">导出PDF</a></td>
</tr>
}
</tbody>
</table>
4. 打印预览
5. 部署网络时问题解决。

6.

HTML to PDF pechkin的更多相关文章
- HTML轉PDF - 使用Pechkin套件
剛好跟人討論到HTML轉PDF需求,便對工具進行簡單評估以備不時之需. 網路上比較多人推的是WkHtmlToPdf,如果是用.NET開發,已經有人包成NuGet套件,直接搜尋pechkin就可找到,它 ...
- WkHtmlToPdf 生成 PDF
1. 首先去http://wkhtmltopdf.org/downloads.html 下载最新版本的安装包 2. 执行安装完成 3. CMD 命令行运行wkhtmltopdf.exe程序生成PDF ...
- .Net 把网页Html转PDF文件
.Net 把网页Html转PDF文件 此篇主要利用 wkhtmltopdf 进行转换. 一.控制台直接转换 首先到官网http://wkhtmltopdf.org/下载wkhtmltopdf ,下 ...
- C# html生成PDF遇到的问题,从iTextSharp到wkhtmltopdf
我们的网站业务会生成一个报告,用网页展示出来,要有生成pdf并下载的功能,关键是生成pdf. 用内容一段段去拼pdf,想想就很崩溃,所以就去网上找直接把html生成pdf的方法. 网上资料大部分都是用 ...
- Pechkin:html -> pdf 利器
Pechkin 是GitHub上的一个开源项目,可方便将html转化成pdf文档,使用也很方便,下面是winform项目中的示例代码: using System; using System.Diagn ...
- 使用Pechkin将HTML网页转换为PDF
Pechkin开源组件使用wkhtmlbox,可以解析CSS样式,将网页转换为PDF文件, 支持URL,或者HTML字符串 1, 从NuGet程序管理器中获得Pechkin GlobalConfig ...
- C#导出HTML到PDF组件 Pechkin
C#导出PDF功能是开发中经常遇到的功能,我们采用第三方的组件,比如 iTextSharp, aspose等,还能搜到一些开源的类库, 但是对于一些内容复杂样式丰富的PDF,我们希望通过传入一个URL ...
- C#使用Pechkin与CPechkin生成PDF
http://blog.sina.com.cn/s/blog_5a52cec70102wpcf.html 1. Pechkin 从NuGet程序管理器中获得Pechkin,代码示例如下: ...
- C#导出HTML到PDF组件Pechkin
http://www.knowsky.com/898441.html C#导出PDF功能是开发中经常遇到的功能,我们采用第三方的组件,比如 iTextSharp, aspose等,还能搜到一些开源的类 ...
随机推荐
- C程序编译过程浅析【转】
转自:http://blog.csdn.net/koudaidai/article/details/8092647 前几天看了<程序员的自我修养——链接.装载与库>中的第二章“编译和链接” ...
- [Oracle] 关系型数据库排序算法和数据结构以及关联查询
关系型数据库排序算法和数据结构以及关联查询 1. Merge sort 理解merge sort算法将有助于更好地理解数据库join操作 - merge join 算法逻辑 将2个有序的大小为N/2的 ...
- Flask-Migrate拓展数据库表结构
# 转载请留言联系 在我们用 sqlchemy 模块创建完几个表时,如果在实际生产环境中,需要对表结构进行更改,应该怎么办呢?总不能把表删除了吧,这样数据就会丢失了. 更好的解决办法是使用数据库迁移框 ...
- shell 练习 (免密钥登陆脚本)
脚本说明 本地服务器ip 10.0.0.5 远程服务器地址 10.0.0.223 #!/bin/bashremote_ip=$ if [ ! -n "$1" ] ;then ech ...
- poj 1329(已知三点求外接圆方程.)
Circle Through Three Points Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 3766 Acce ...
- HDU 6235.Permutation (2017中国大学生程序设计竞赛-哈尔滨站-重现赛)
Permutation Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others)Tot ...
- Nginx的server为0.0.0.0/0.0.0.1的作用?
看到kong默认的代理和后台server 都是0.0.0.0,代理到上游的服务器proxy_pass $upstream_scheme://kong_upstream;配置如下, upstream k ...
- windows如何安装python zmq
百度windows python zmq 安装,真的是佩服百度还能活到今天,搜到的结果是各种yum 安装,各种jmq怎么安装,更有甚者直接整源代码编译,忍无可忍,所以自己写下这一篇自己探索出来的安装方 ...
- SQL常用函数之五 str()
原文:SQL常用函数之五 str() 使用str函数 :STR 函数由数字数据转换来的字符数据. 语法 STR ( float_expression [ , ...
- 使用size()方法输出列表中的元素数量。需要注意的是,这个方法返回的值可能不是真实的,尤其当有线程在添加数据或者移除数据时,这个方法需要遍历整个列表来计算元素数量,而遍历过的数据可能已经改变。仅当没有任何线程修改列表时,才能保证返回的结果是准确的。
使用size()方法输出列表中的元素数量.需要注意的是,这个方法返回的值可能不是真实的,尤其当有线程在添加数据或者移除数据时,这个方法需要遍历整个列表来计算元素数量,而遍历过的数据可能已经改变.仅当没 ...