使用Spire PDF for .NET将HTML转换成PDF文档
- 目录
- 开发环境说明
- Spire PDF for .NET (free edition)体验
- 资源下载
开发环境说明
Microsoft Visual Studio 2013 Ultimate Edition With Update 4
Spire PDF for .NET v3.2 Free Edition
Microsoft Windows 7 Ultimate Edition With SP1
Spire PDF for .NET 体验
这次是受Yesi的邀请,为他们的产品(http://www.e-iceblue.com/)写一篇测评类的文章。说实话我是第一次写类似的文章,有些惶恐。不过还是感谢Yesi的信任。
按照我的理解,他们的产品多是用于办公文档类型的生成、转换的。而这些功能也是我们开发过程中常用的功能。比如:在网站开发时,将数据表导出到PDF。之前我常用的就是Reporting Service + Report Viewer控件的方式。无疑这可能是最简单的方法。但是ReportViewer控件的回发机制无疑破坏了整体的用户体验。
因此,我今天挑选了PDF组件进行了测试。
程序流程图:
如上图中所描述的那样。首先我将模拟数据(DataSource.xml)通过XslCompiledTransform类转换成html文档,之后使用Spire PDF组件中的PdfDocument对象将html文档转换成PDF文件。
代码:
private void TransformToPdf(FileInfo htmlFile)
{
try
{
PdfDocument pdfDocument = new PdfDocument();
pdfDocument.LoadFromHTML(htmlFile.FullName, false, false, false);
FileInfo targetPDF = new FileInfo(Path.Combine(htmlFile.Directory.FullName, htmlFile.Name + ".pdf"));
pdfDocument.SaveToFile(targetPDF.FullName, FileFormat.PDF);
Trace.Write(string.Format("已经将HTML文件转换为PDF类型的文件:{0}", targetPDF.FullName));
this.SetStartButtonEnabledProperty(true);
this.SetProgressPictureState(false);
}
catch
{
Trace.Write(string.Format("无法转换HTML文件{0}为PDF类型!", htmlFile.FullName));
}
}
C# Code
正如上面代码大家看到的,短短几行,就可以将HTML文档转换成PDF文档了。但是在测试的过程中也发现了一个问题,就是在生成PDF文档时,会有一个短暂的卡顿。不知道如果是生成复杂PDF文档的话效率会不会有些影响。不过,不要对程序员要求的太多。作为程序员,我需要为我们正名:我们只能利用我们的智慧、知识和劳动,为部分人群解决部分问题。又要简单、又要美观、又要效率高,貌似微软、谷歌这些大公司也没有完全做到吧。哈哈..一点拙见
谢谢Yesi的关注和信任。
使用Spire PDF for .NET将HTML转换成PDF文档的更多相关文章
- PDF文件可以转换成txt文档吗
PDF是一种便携式的文件格式,传送和阅读都非常方便,是Adobe公司开发的跨平台文件格式,它无论在哪种打印机上都可以保证精确的颜色和准确的打印效果.可是有点遗憾的是PDF格式一般不能在手机上打开,或者 ...
- ABBYY将JPEG文件转换成Word文档的方法
日常工作中处理JPEG格式的图像文件时,有时需要转换成Word文档进行编辑,市场上应用而生了很多转换工具,相信不少人听说过OCR(光学字符识别)软件,可以用来转换图像文件,而在OCR软件中, ABBY ...
- 如何使用ABBYY FineReader 12将JPEG文件转换成Word文档
日常工作中处理JPEG格式的图像文件时,有时需要转换成Word文档进行编辑,市场上应用而生了很多转换工具,相信不少人听说过OCR(光学字符识别)软件,可以用来转换图像文件,而在OCR软件中, ABBY ...
- 如何用pdfbox-app-1.8.10.jar批处理将pdf文档转换成text文档
1.首先下载pdfbox-app-1.8.10.jar(下载地址:http://pdfbox.apache.org/download.html) 2.将pdfbox-app-1.8.10.jar加载到 ...
- C# : 操作Word文件的API - (将C# source中的xml注释转换成word文档)
这篇博客将要讨论的是关于: 如何从C#的source以及注释, 生成一份Word格式的关于各个类,函数以及成员变量的说明文档. 他的大背景如下...... 最近的一个项目使用C#, 分N个模块, 在项 ...
- HTML转换成word文档
1工具类保存word文件 public class WordAction { public static void SaveAsWord(string fileName, string pFileNa ...
- 将Latex tex文档转换成 word文档(下)
在上篇中我们介绍了一款将 tex 文件转换成 word 文件的工具 借用万能的搜索引擎,在 Google 上找到了更好的工具 它就是Pandoc 介绍 Pandoc 是由 John McaFarlan ...
- 将Latex tex文档转换成 word文档(上)
有时候逼不得已,必须得将自己精心排版好的latex 文档 转换成word 给别人编辑 以下提供一个方法 下载 Tex2Word 工具,地址我的网盘 安装 解压后安装,使用默认安装路径 安装过程中.点击 ...
- 使用canvas给图片添加水印, canvas转换base64,,canvas,图片,base64等转换成二进制文档流的方法,并将合成的图片上传到服务器,
一,前端合成带水印的图片 一般来说,生成带水印的图片由后端生成,但不乏有时候需要前端来处理.当然,前端处理图片一般不建议,一方面js的处理图片的方法不全,二是有些老版本的浏览器对canvas的支持度不 ...
随机推荐
- [11-1] adaboost DTree
main idea:用与$u_t$成正比的概率sampling生成的数据集$\widetilde{D}$训练DTree:用整个数据集$D$计算weighted$\epsilon_n$,计算$g_t$的 ...
- Spring、实例化Bean的三种方法
1.使用类构造器进行实例化 <bean id="personIService" class="cn.server.impl.PersonServiceImpl&qu ...
- 如何使用dynamic
DataTable dt = new DataTable("TableOne"); dt.Columns.Add("ID", typeof(int)); ...
- 【Leetcode】Set Matrix Zeroes
给定一个m x n的矩阵,如果某个元素为0,则把该元素所在行和列全部置0. Given a m x n matrix, if an element is 0, set its entire row a ...
- javascript动态改变iframe的src
页面中需要动态的改变iframe的地址,方法有: 1. window.frames["chartFrame"].document.location = "<%=ba ...
- T-SQL查询:语句执行顺序
读书笔记:<Microsoft SQL Server 2008技术内幕:T-SQL查询> =============== T-SQL查询的执行顺序 =============== === ...
- Serializable接口的背后
序列化是什么? 序列化就是将一个对象的状态(各个属性量)保存起来,然后在适当的时候再获得.序列化分为两大部分:序列化和反序列化. 序列化是这个过程的第一部分,将数据分解成字节流,以便存储在文件中或在网 ...
- 关于在storyboard拖按钮控件,手动设置代码不成功的问题
首先,在 storyboard 中拖拽一个按钮控件.设置好约束条件
- EassyMock实践 捕获参数
在测试接口过程中,有时我们希望知道自己期望传入的参数是什么,以此来判断传入参数的正确行,这时就需要用到EassyMock的capture方法.该方法能捕获传入的参数存放到自定义的变量中,然后用捕获的参 ...
- <s:if>标签与ActionContext.getContext().getSession()
今天在做<s:if>标签中的属性值从 ActionContext.getContext().getSession().put("WW_TRANS_I18N_LOCALE" ...