-
C#教程之C#:采用TuesPechkin生成Pdf
本站最新发布 C#从入门到精通
试听地址 https://www.xin3721.com/eschool/CSharpxin3721/
试听地址 https://www.xin3721.com/eschool/CSharpxin3721/
1、需求
前段时间有个需求,要求把网页生成pdf,找了各种插件,才决定使用这个TuesPechkin,这个是后台采用C#代码进行生成
2、做法
我要做的是一个比较简单的页面,采用MVC绑定,数据动态加载,页面上给个按钮,点击后请求后台接口,便可以生成pdf文件了
3、实现方式
引入两个相关DLL,TuesPechkin.Wkhtmltox.XXX 根据你当前的系统来选择对应的DLL(一般添加前两个就行),
4、生成PDF代码段
先在后台将指定HTML页生成为string字符串,然后调用如下方法即可
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
/// <summary> /// 生成pdf /// </summary> /// <param name="htmlStr">生成内容</param> /// <param name="path">生成地址</param> private static void ConvertHtmlTextToPdf( string htmlStr, string filepath) { if (!Directory.Exists(filepath)) //不存在文件夹,创建 Directory.CreateDirectory(filepath); //创建新的文件夹 var fileName = DateTime.Now.ToString( "yyyyMMddHHmmssffff" ) + ".pdf" ; var path = filepath + fileName; var document = new HtmlToPdfDocument { GlobalSettings = { ProduceOutline = true , DocumentTitle = "标题" , PaperSize = PaperKind.A4, // Implicit conversion to PechkinPaperSize Margins = { All=0, Unit = Unit.Centimeters } }, Objects = { new ObjectSettings { HtmlText =htmlStr, WebSettings = new WebSettings { DefaultEncoding= "UTF-8" , LoadImages= true , } } }, }; byte [] buf = GetConverter().Convert(document); //直接把result二进制数据写入文件流 FileStream fs = new FileStream(path, FileMode.OpenOrCreate); fs.Write(buf, 0, buf.Length); fs.Close(); IToolset toolset = new PdfToolset(); toolset.Unload(); } |
栏目列表
最新更新
Winform中怎样跨窗体获取另一窗体的控件对
Winform中使用FastReport的PictureObject时通过代
三分钟掌握,使用Quqrtz.Net实现定时发送邮
NET/Regex 处理连续空格
QR 码详解(下)
C#中的等值判断1
C#编写了一个基于Lucene.Net的搜索引擎查询
使用FastReport报表工具生成报表PDF文档
基于JieBaNet+Lucene.Net实现全文搜索
C#取视频某一帧图片
.Net Standard(.Net Core)实现获取配置信息
Linux PXE + Kickstart 自动装机
Shell 编程 基础
Shell 编程 条件语句
CentOS8-网卡配置及详解
Linux中LVM逻辑卷管理
1.数码相框-相框框架分析(1)
Ubuntu armhf 版本国内源
Linux中raid磁盘阵列
搭建简易网站
Dubbo(五):深入理解Dubbo核心模型Invok
vfp教程之VFP与Excel交互编程
vfp教程之在VFP中实现跟变式组合框及椭圆
SQL SERVER查询数据库所有表的大小,按照记
使用 SQL 服务器时,"评估期已过期"错
sql server无法连接本地服务器
使用sql语句创建表
VB操作Access数据库小记 ————————
access数据库远程连接
java web操作Access数据库