itextdef将动态html转为pdf,[C#]使用第三方开源库iText7.pdfHtml,将Html转换成Pdf,以及如何以Html作为打印模板...
使用第三方开源库iText7.pdfHtml,将html和css转成pdf,官方:https://itextpdf.com/en/demos/convert-html-css-to-pdf-free-online;
官方示例:
usingSystem.IO;usingiText.Html2pdf;namespaceWebsiteDemoPdfHtml
{classProgram
{private static string ORIG = "/uploads/input.html";private static string OUTPUT_FOLDER = "/myfiles/";static void Main(string[] args)
{string pdfDest = OUTPUT_FOLDER + "output.pdf";
HtmlConverter.ConvertToPdf(new FileStream(ORIG, FileMode.Open), newFileStream(pdfDest, FileMode.Create));
}
}
}
官方可以下载到详细的使用说明文档:
设置默认打印纸张大小:
var pdfDest = "hello.pdf";var pdfWriter = newPdfWriter (pdfDest);var pdf = newPdfDocument (pdfWriter);var pageSize = PageSize.A4; //设置默认打印纸张大小,css @page规则可覆盖这个
pdf.SetDefaultPageSize (pageSize);
支持css @page规则控制打印设置选项,例如css @page设置A3打印纸,横向打印,这些规规将覆盖上面的设置默认打印纸张大小:
@page{size:A3 landscape;
}
如果需要引入其他资源,比如插入图片,需要设置根目录,将资源文件放入根目录或子文件夹下:
var properties = newConverterProperties ();
properties.SetBaseUri ("wwwroot"); //设置根目录
默认不支持中文字体,需要修改默认字体提供者,使其支持系统字体:
var provider = new DefaultFontProvider (true, true, true); //第三个参数为True,以支持系统字体,否则不支持中文
properties.SetFontProvider (provider);
支持css @media规则,使其在不同设备上显示不同效果,比如在预览时使用Screen设备显示彩色效果,在打印时使用Print设备增强黑白效果:
var mediaDeviceDescription = new MediaDeviceDescription (MediaType.PRINT); //指当前设备类型,如果是预览使用SCREEN
mediaDeviceDescription.SetWidth (pageSize.GetWidth ());
properties.SetMediaDeviceDescription (mediaDeviceDescription);
最后是以html作为打印模板,加载数据,再转成pdf;
官方推荐的是使用XSL转换(xmlns:xsl="http://www.w3.org/1999/XSL/Transform"),将xml转换成html,但该示例目前仅支持java,c#找不到相关源码,并且该方式不支持模板预览,不方便用户修改模板:
所以还是推荐使用正则替换规则导入数据,下面是示例html:
@page{size:A4 landscape;
}ul{margin-left:0;padding-left:0;
}ul li{list-style:none;
}ul li:after{content:"";display:block;clear:both;
}ul li p{float:left;margin-left:2em;
}ul li p:first-child{margin-left:0;
}ul li p img{width:36px;height:36px;
}
使用第三方库iText7.pdfHtml,将Html转换成Pdf,以及如何以Html作为打印模板
{{ListOfNames}}
姓名:{{Name}}
年龄:{{Age}}
性别:{{Sex}}
itextdef将动态html转为pdf,[C#]使用第三方开源库iText7.pdfHtml,将Html转换成Pdf,以及如何以Html作为打印模板...相关推荐
- PHP 把ofd格式文件转PDF,打开OFD格式文件及将OFD格式文件转换成PDF文件
今天收到一张浙江开具的ofd格式发票,便在网上找相关的软件来打开方便打印出来给财务做账,但是找了一大圈没有解决方案,有些收费的解决方法,大部分所谓的OFD软件是骗人的,下载安装后根本打不开OFD格式的 ...
- matlab 函数pdf怎么用_办公小技巧:图片怎么转换成pdf格式?这个转换方法超好用,用过的都说好...
阅读本文前,请您先点击上面的"蓝色字体",再点击"关注",这样您就可以继续免费收到文章了.每天都会有分享,都是免费订阅,请您放心关注. 注:本文转载自网络,不代 ...
- python 怎么将数组转为列表_图片转换成pdf格式怎么操作?什么软件能将图片转为pdf?...
伙伴们好,你们知道如何把图片转为pdf格式吗?前一阵子我参加了一个家居行业大会,在会议上拍摄了不少会议照片,包括主持人讲话.嘉宾出席.观众提问.产品推广等环节都拍摄了不同的角度.拍摄好后,需要传送给写 ...
- html5把word转为pDF,在线word转pdf 如何将word转换成pdf
日常办公常接触到pdf.word文件,在打印或发送文件时也有需要word转成稳定性较好的pdf,那 一起来看看是如何将word转换成pdf的吧.打开安装好的word to pdf软件,如下图,界面很简 ...
- 怎样将jpg转换成pdf软件
为什么80%的码农都做不了架构师?>>> 怎样将jpg转换成pdf软件 序言: 企业或个人通常会遇到设备终端软件的兼容性和支持性问题,比如,JPG转PDF文本,这给等于 ...
- ppt转换成pdf转换器免费版
为什么80%的码农都做不了架构师?>>> ppt转换成pdf转换器免费版 ppt文件怎么转换为pdf文件?这样的问题对于很多电脑新手来说,显然不是一件容易的事情.大部分的用户遇到此类 ...
- ppt转换成pdf免费软件
为什么80%的码农都做不了架构师?>>> ppt转换成pdf免费软件 导读:使用 ppt转换成pdf转换器当然是转换ppt文件的一个方法,但毕竟好的转换工具并不多,对于从事大量文案处 ...
- jpg图片转换成pdf文件,方法步骤
如何把jpg图片转换成pdf文件?近期有不少小伙伴问我,能不能把jpg图片转换成pdf文件,让自己的jpg图片文件能稳定的在不同系统查看使用,这样也就避免了因jpg图片多和格式问题而导致的的打开慢或打 ...
- 比较好的ppt转换成pdf转换器
比较好的ppt转换成pdf转换器 教学中我们通常需要用到PPT幻灯片,利用幻灯片动态的动漫设置让教学显得更加生动活泼,然而,如将PPT作为复习资料供给学生使用,则是不可取的,将PPT转换成可供观赏的P ...
最新文章
- 编译器设计-代码生成
- 42所双一流大学校长情况简介(2019年)
- 版本控制系统客户端VisualSVN的安装与使用(for Visual Studio)
- PHP超级配置模块--PHP4,PHP5,module,cgi任你玩转--应用于Apache
- css3 - target
- 【bzoj 4390】 [Usaco2015 dec]Max Flow(树上差分)
- LeetCode动态规划系列教程(上)
- 立林门禁读卡器接线图_立林楼宇对讲维修方法—常见故障的解决方法
- java 如何执行dig 命令_linux dig 命令使用方法
- Android——GSON解析JSON
- uni-app表情包实现
- asp.net入门教程
- 向量坐标相乘的计算算法
- Google搜索关键字
- ArcGIS空间统计——点密度计算
- 网络芯片比较:DP83848、DM9000、enc28j60、RLD8019、w5100
- 常见 SQL 面试题:经典 50 例
- 安卓课程设计之记账本_基于Android个人用户记账本系统课程设计报告
- Linux实战教学笔记28:企业级LNMP环境应用实践
- tableau各种精典示例经验总结01
热门文章
- CSS的样式小计(1)
- springboot细节挖掘(jar和war打包)
- 对scala函数总结
- python sphinx_Python Sphinx使用实例及问题解决
- itext生成pdf间距_使用itext生成pdf
- mysql作业是什么意思_MySQL 作业七
- 电子助力方向机控制模块_17款路虎揽胜:偶发性电子助力失效
- html post请求 渲染,FastAPI框架入门 基本使用, 模版渲染, form表单数据交互, 上传文件, 静态文件配置...
- Unity2018新功能抢鲜 | ShaderGraph入门教程
- OpenCV基本函数使用--Python