• 目录

    • 开发环境说明
    • 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文档的更多相关文章

  1. PDF文件可以转换成txt文档吗

    PDF是一种便携式的文件格式,传送和阅读都非常方便,是Adobe公司开发的跨平台文件格式,它无论在哪种打印机上都可以保证精确的颜色和准确的打印效果.可是有点遗憾的是PDF格式一般不能在手机上打开,或者 ...

  2. ABBYY将JPEG文件转换成Word文档的方法

    日常工作中处理JPEG格式的图像文件时,有时需要转换成Word文档进行编辑,市场上应用而生了很多转换工具,相信不少人听说过OCR(光学字符识别)软件,可以用来转换图像文件,而在OCR软件中, ABBY ...

  3. 如何使用ABBYY FineReader 12将JPEG文件转换成Word文档

    日常工作中处理JPEG格式的图像文件时,有时需要转换成Word文档进行编辑,市场上应用而生了很多转换工具,相信不少人听说过OCR(光学字符识别)软件,可以用来转换图像文件,而在OCR软件中, ABBY ...

  4. 如何用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加载到 ...

  5. C# : 操作Word文件的API - (将C# source中的xml注释转换成word文档)

    这篇博客将要讨论的是关于: 如何从C#的source以及注释, 生成一份Word格式的关于各个类,函数以及成员变量的说明文档. 他的大背景如下...... 最近的一个项目使用C#, 分N个模块, 在项 ...

  6. HTML转换成word文档

    1工具类保存word文件 public class WordAction { public static void SaveAsWord(string fileName, string pFileNa ...

  7. 将Latex tex文档转换成 word文档(下)

    在上篇中我们介绍了一款将 tex 文件转换成 word 文件的工具 借用万能的搜索引擎,在 Google 上找到了更好的工具 它就是Pandoc 介绍 Pandoc 是由 John McaFarlan ...

  8. 将Latex tex文档转换成 word文档(上)

    有时候逼不得已,必须得将自己精心排版好的latex 文档 转换成word 给别人编辑 以下提供一个方法 下载 Tex2Word 工具,地址我的网盘 安装 解压后安装,使用默认安装路径 安装过程中.点击 ...

  9. 使用canvas给图片添加水印, canvas转换base64,,canvas,图片,base64等转换成二进制文档流的方法,并将合成的图片上传到服务器,

    一,前端合成带水印的图片 一般来说,生成带水印的图片由后端生成,但不乏有时候需要前端来处理.当然,前端处理图片一般不建议,一方面js的处理图片的方法不全,二是有些老版本的浏览器对canvas的支持度不 ...

随机推荐

  1. ios 开发 常见问题解决 (持续更新)

    1.使用cocoaPods引用第三方类库,报错:file not found   . 解决方案:设置 Project->Info->Configurations之后  clear ,然后再 ...

  2. 导航栏控制器和标签栏控制器(UINavigationController和UITabBarController)混用

    很多时候,在UI设计方面同时需要使用导航控制器和标签栏控制器,这时,需要掌握如何设计结合使用这两种不同控制器.比如手机QQ,程序有三个标签 栏(分别为消息.联系人.动态),同时在选择某个联系人或者会话 ...

  3. 我终于解决UM编辑器了 泪......

    气死我了..... 好不容易测试好了....更显得我笨了..... 原来....什么都不用改   只改了2个小位置....真的是.....回首自己 不敢看 0.0 OK  记下步骤  以免以后忘记 将 ...

  4. 温故而知新之数据库的分离和附加…高手请跳过….

    sql server2005分离数据库后,把路径下的两个文件拷到自己想要存放的目录下,然后再附加

  5. JavaScript 字符串实用常用操作

    字符串截取1. substring()xString.substring(start,end)substring()是最常用到的字符串截取方法,它可以接收两个参数(参数不能为负值),分别是要截取的开始 ...

  6. node.js(六) UTIL模块

    1.inspect函数的基本用法 util.inspect(object,[showHidden],[depth],[colors])是一个将任意对象转换为字符串的函数,通常用于调试和错误输出.它至少 ...

  7. [hadoop]Cannot create directory /mdrill/tablelist/fact_seller_all_d. Name node is in safe mode.

    在执行mdrill创建表的时候报如下异常(蓝色部分为关键): [mdrill@hadoop1101 bin]$ ./bluewhale mdrill create ./create.sql higo ...

  8. mysql获取各种日期

    select curdate(); --获取当前日期 select last_day(curdate()); --获取当月最后一天. select DATE_ADD(curdate(),interva ...

  9. [置顶] HDFS文件内容追加(Append)

    HDFS设计之处并不支持给文件追加内容,这样的设计是有其背景的(如果想了解更多关于HDFS的append的曲折实现,可以参考<File Appends in HDFS>:http://bl ...

  10. Android 通过HTTPCLINET GET请求互联网数据

    private EditText et; private TextView tv; HttpClient client; @Override protected void onCreate(Bundl ...