使用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的支持度不 ...
随机推荐
- ESMOD北京高级时装艺术学校_百度百科
ESMOD北京高级时装艺术学校_百度百科 ESMOD北京高级时装艺术学校
- SRM 581 D2 L3:TreeUnionDiv2,Floyd算法
题目来源:http://community.topcoder.com//stat?c=problem_statement&pm=12587&rd=15501 这道题目开始以为是要在无向 ...
- The MySQL C API 编程实例
在网上找了一些MYSQL C API编程的文章,看了后认为还是写的不够充分,依据自己经验写了这篇<The MySQL C API 编程实例>,希望对须要调用到MYSQL的C的API的朋友有 ...
- 怎样安装pip--python的包管理工具
pip是python的包管理工具,使用它来安装python的模块很方便. pip支持的操作系统:Unix/Linux, OS X, and Windows. 支持的python版本号:2.6, 2.7 ...
- java 解析json的问题
本文转载自http://chriszz.sinaapp.com/?p=392 Json就是Javascript notation,可以替代XML,用做数据交互. Json的两种基本表示形式,可以用自动 ...
- SqlServer2008 数据库同步的两种方式 (发布、订阅)
尊重原著作:本文转载自http://www.cnblogs.com/tyb1222/archive/2011/05/31/2064944.html 上篇中说了通过SQL JOB的方式对数据库的同步,这 ...
- J2EE在Web容器中启动报错:com.sun.jdi.InvocationException occurred invoking method.
我只是将Hibernate映射文件中的lazy属性有true改为lazy="false",即解决了上述问题.当然我之前也遇到一个问题是不调试时插入数据是不成功的,但是在Debug模 ...
- [转]取代cookie的网站追踪技术:”帆布指纹识别”初探
[前言] 一般情况下,网站或者广告联盟都会非常想要一种技术方式可以在网络上精确定位到每一个个体,这样可以通过收集这些个体的数据,通过分析后更加精准的去推送广告(精准化营销)或其他有针对性的一些活动.C ...
- lightoj 1079 Just another Robbery
题意:给出银行的个数和被抓概率上限.在给出每个银行的钱和抢劫这个银行被抓的概率.求不超过被抓概率上线能抢劫到最多的钱. dp题,转移方程 dp[i][j] = min(dp[i-1][j] , dp[ ...
- leetcode Letter Combinations of a Phone Number python
class Solution(object): def letterCombinations(self, digits): """ :type digits: str : ...