• PDFSharp生成PDF (转)


    http://www.cnblogs.com/zhouxin/p/3228108.html

    在上面用OpenXML生成word后,原来利用Word2010里的导出成PDF功能就不能用.

    然后找开源组件生成PDF,最开始用的是iTextSharp,做完导出报表了才发现,这个开源协议用的是AGPL,只能放弃,重新查找后,找到PDFSharp(MTI协议).结合了MigraDoc来生成PDF,过程大同小异,对比iTextSharp,在画相关元素时,会慢不少,20页A4内容,OpenXML和iTextSharp都能保持在2S内输出完成,而PDFSharp需要5-10S,不知是不是因为GDI+的原因.

    代码不讲解了,只贴出来,只说明一点,对中文的支持,需要设置下.

    System.Drawing.Text.PrivateFontCollection pfcFonts = new System.Drawing.Text.PrivateFontCollection();
    string strFontPath = @"C:/Windows/Fonts/msyh.ttf";//字体设置为微软雅黑 
    pfcFonts.AddFontFile(strFontPath);
    Style style = document.Styles["Normal"];
    style.Font = new MigraDoc.DocumentObjectModel.Font(pfcFonts.Families[0].Name, 12);

     View Code

    总的来说,和OpenXML一样,在用OpenXML导出数据时,已经把数据整理为,输出数据,输出图形,输出表格,输出一组数据.这几种形式,我用PDFSharp时,只是针对这几个类型进行处理一下就行了.

    毕竟OpenXML只能导出word2007及以上识别的文件,word2003还是需要Ms office com组件,这个类我就不贴了,搜导出word几乎都用的这种.

  • 相关阅读:
    Linux入门
    服务器核心知识
    跨域
    DRF的解析器和渲染器
    DRF的分页
    DRF 权限 频率
    DRF 版本 认证
    Django Rest Framework 视图和路由
    Serializers 序列化组件
    六、Java NIO 通道之间的数据传输
  • 原文地址:https://www.cnblogs.com/ExMan/p/3834775.html
Copyright © 2020-2023  润新知