c# 通过html导出pdf,带分页
通过NuGet安装
Pechkin
Pechkin.Synchronized
一下示例是控制台应用程序
- static void btnCreate() {
- SynchronizedPechkin sc = new SynchronizedPechkin(new GlobalConfig()
- .SetMargins(new Margins() { Left = , Right = , Top = , Bottom = }) //设置边距
- .SetPaperOrientation(false) //设置纸张方向为纵向
- .SetPaperSize(MillimetersToPixelsWidth(), MillimetersToPixelsWidth())); //设置纸张大小50mm * 100mm
- ObjectConfig oc = new ObjectConfig();
- oc.SetPrintBackground(true)
- .SetLoadImages(true);
- byte[] buf = sc.Convert(oc, File.ReadAllText(@"C:\Users\Administrator\Documents\WeChat Files\ahjesus\Files\111.html"));
- if (buf == null) {
- Console.WriteLine("Error converting!");
- return;
- }
- try {
- string fn = Path.GetTempFileName() + ".pdf";
- FileStream fs = new FileStream(fn, FileMode.Create);
- fs.Write(buf, , buf.Length);
- fs.Close();
- Process myProcess = new Process();
- myProcess.StartInfo.FileName = fn;
- myProcess.Start();
- } catch { }
- }
- static string get_uft8(string unicodeString) {
- UTF8Encoding utf8 = new UTF8Encoding();
- Byte[] encodedBytes = utf8.GetBytes(unicodeString);
- String decodedString = utf8.GetString(encodedBytes);
- return decodedString;
- }
- //length是毫米,1厘米=10毫米
- public static int MillimetersToPixelsWidth(float length) {
- System.Windows.Forms.Panel p = new System.Windows.Forms.Panel();
- System.Drawing.Graphics g = System.Drawing.Graphics.FromHwnd(p.Handle);
- IntPtr hdc = g.GetHdc();
- int width = GetDeviceCaps(hdc, ); // HORZRES
- int pixels = GetDeviceCaps(hdc, ); // BITSPIXEL
- g.ReleaseHdc(hdc);
- return (int)(((float)pixels / (float)width) * length);
- }
- [DllImport("gdi32.dll")]
- private static extern int GetDeviceCaps(IntPtr hdc, int Index);
c# 通过html导出pdf,带分页的更多相关文章
- 通过html导出PDF如何分页
每页一个DIV,加上样式page-break-inside:avoid; 即可分页了 .pdfpage{page-break-inside:avoid;} <div class="pd ...
- word2007导出pdf带书签
1.关闭所有word文档 2.下载Word_2007_SaveAsPDFandXPS_12.0_XiaZaiBa.exe安装 3.如果出错请重启PC
- JAVA导出pdf实例
一.直接导出成PDF Java代码 1. import java.io.FileNotFoundException; 2. import java.io.FileOutputStream; 3. ...
- iText导出pdf、word、图片
一.前言 在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText.通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超级连接显示或 ...
- Itext导出PDF,word,图片案例
iText导出pdf.word.图片 一.前言 在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText.通过在服务器端使用Jsp或JavaBean生 ...
- Ireport 报表导出 Poi + ireport 导出pdf, word ,excel ,htm
Ireport 报表导出 Poi + ireport 导出pdf, doc ,excel ,html 格式 下面是报表导出工具类reportExportUtils 需要导出以上格式的报表 只需要调用本 ...
- “MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第六篇(图片新闻的添加以及带分页的静态页的生成)
“MVC+Nhibernate+Jquery-EasyUI” 信息发布系统 第六篇(图片新闻的添加以及带分页的静态页的生成) 一.这篇文章主要是要实现:图片新闻的添加,无刷新图片的上传,以及添加新闻静 ...
- 纯前端导出pdf文件
纯前端js导出pdf,已经用于生产环境. 工具: 1.html2canvas,一种让html转换为图片的工具. 2.pdfmake或者jspdf ,一种生成.编辑pdf,并且导出pdf的工具. pdf ...
- 史上最全的springboot导出pdf文件
最近项目有一个导出报表文件的需求,我脑中闪过第一念头就是导出pdf(产品经理没有硬性规定导出excel还是pdf文件),于是赶紧上网查看相关的资料,直到踩了无数的坑把功能做出来了才知道其实导出exce ...
- R 导出pdf设置字体
主要参考自: https://blog.csdn.net/xmuecor/article/details/51462172 library(showtext)showtext.auto(enable ...
随机推荐
- 【数组】Search for a Range
题目: Given a sorted array of integers, find the starting and ending position of a given target value. ...
- App实现开机启动
Android启动时,会发出一个系统广播 ACTION_BOOT_COMPLETED,它的字符串常量表示为 “android.intent.action.BOOT_COMPLETED” 开机自启动程序 ...
- PL/SQL developer 出现无效的SQL语句的解决
这里要说的SQL语句本身没有错误,但是PL/SQL developer 出现无效的SQL语句的解决. 出现这个提示是因为下面的这句代码: --变量num:是一个地址值,在该地址上保存了输入的值 acc ...
- ES6-Array
/* * 数组解构赋值: * ES6允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这种被称为解构. * 示例如下: */ var [a,b,c] = [1,2,3]; console.log ...
- Go 开发
0.参数传递永远是值传递,地址也是一种值 1.go 开发环境的配置 2.import 包的几种形式: 1)_,默认导入一个包时,会将包中内容导入再执行包中的init()方法,有时并不需要某个包,只是想 ...
- 五个步骤教你理清Redis与Memcached的区别
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由Super发表于云+社区专栏 memcached和redis,作为近些年最常用的缓存服务器,相信大家对它们再熟悉不过了.前两年还在学校 ...
- java Fork/Join框架
应用程序并行计算遇到的问题 当硬件处理能力不能按摩尔定律垂直发展的时候,选择了水平发展.多核处理器已广泛应用,未来处理器的核心数将进一步发布,甚至达到上百上千的数量.而现在很多的应用程序在运行在多核心 ...
- cefsharp 在anycpu下运行
从cefsharp57开始就支持anycpu了,不过需要一些设置: 1.首先要打开*.csprj文件,添加节点 <CefSharpAnyCpuSupport>true</CefSha ...
- [javaSE] 数组(查找-二分查找)
前提数组必须是有序的 定义最小,最大,中间的角标索引 int min,max,mid; min=0; max=arr.length-1; mid=(min+max)/2; 上面的索引需要变化,使用循环 ...
- 通过SourceTree连接SSL有问题的自建gitlab服务器
我用的是 SourceTree 作为Git客户端的,用它连接一个HTTPS证书过期的自建git服务,会收到下面错误: abort: error: _ssl.c:507: error:14090086: ...