在C#.NET中,如何生成PDF文件?主要有以下几个途径
1.使用.NET文件流技术;
若通过.NET的文件流技术生成PDF文件,必须对PDF文件的语法很清楚,例如BT表示实体内容开始;ET表示实体内容结束;TD表示换行等等。我们可以从Adobe的官方网站上下载PDF的语法说明文档,但文档几乎有1000页。如果熟悉好语法以后再编程,花费的时间肯定很长,而且生成的PDF文档不一定能满足要求。有关C# 代码参见附件。
有关PDF文件的语法详见:
http://partners.adobe.com/public/developer/en/pdf/PDFReference.pdf
2.使用第三方控件
I.开源控件
① ASP.NET FO PDF at SourceForge.net - generates XSL-FO from DataTable to render PDF
② iTextSharp at SourceForge.net
1.Examples and Tutorial: http://itextsharp.sourceforge.net/
2.Also see this article: Create PDF on the fly with .NET and iTextSharp by Valerio Fornito, DoPostBack.com
③ PDFCreator at GotDotNet - design PDF document visually using Visual Studio IDE
④ Report.NET at SourceForge.net
II.商业控件
① ABCpdf .NET by WebSupergoo - free license also available
② Apoc XSL-FO by Chive Software - generates PDF using XSL-FO
③ Aspose.Pdf by Aspose
④ DynamicPDF by ceTe Software
⑤ PDF4NET by O2 Solutions
⑥ PDFLib by PDFLib GmbH
⑦ TallPDF.NET by TallComponents - able to create PDF documents either programmatically using an object model or from XML.
Tutorial: Create and manipulate PDF documents - 100% .NET by Frank Rem (CodeProject.com)
⑧ XMLPDF by Visual Programming - converts XML to PDF
从成本考虑,使用开源控件是一个不错的选择。在我所作的项目中,就采用了iTextSharp组件,生成的PDF文件能够满足项目要求。有关iTextSharp的DLL、源代码和编码实例都可以从http://itextsharp.sourceforge.net/获得。
3.使用Acrobat Distiller
可以在C# 或者脚本文件(.js 或 .vbs)中直接调用Acrobat Distiller对象,从而生成PDF文件。但是从版权考虑,则需购买Adobe Acrobat Professional。
代码可参考以下网址:
http://dev.yesky.com/msdn/123/2101623.shtml
在C#.NET中,如何生成PDF文件?主要有以下几个途径的更多相关文章
- 怎么用PHP在HTML中生成PDF文件
原文:Generate PDF from html using PHP 译文:使用PHP在html中生成PDF 译者:dwqs 利用PHP编码生成PDF文件是一个非常耗时的工作.在早期,开发者使用PH ...
- 在spring boot 中使用itext和itextrender生成pdf文件
转载请注明出处 https://www.cnblogs.com/majianming/p/9539376.html 项目中需要对订单生成pdf文件,在第一版本其实已经有了比较满意的pdf文档,但是还是 ...
- linux下编译bib、tex生成pdf文件
实验: 在linux环境下,编译(英文)*.bib和*.tex文件,生成pdf文件. 环境: fedora 20(uname -a : Linux localhost.localdomain 3.19 ...
- ThinkPHP3.2.3扩展之生成PDF文件(MPDF)
目前是PHP生成PDF文件最好的插件了,今天介绍下在ThinkPHP3.2.3里如何使用. 先安照路径放好如图. 下面是使用方法 public function pdf(){ //引入类库 Vendo ...
- [轉載]史上最强php生成pdf文件,html转pdf文件方法
之前有个客户需要把一些html页面生成pdf文件,然后我就找一些用php把html页面围成pdf文件的类.方法是可谓是找了很多很多,什么html2pdf,pdflib,FPDF这些都试过了,但是都没有 ...
- JAVA生成PDF文件
生成PDF文件是主要应用的是ITEXT插件 import java.awt.Color; import java.io.File; import java.io.FileOutputStream; i ...
- 史上最强php生成pdf文件,html转pdf文件方法
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- java调用wkhtmltopdf生成pdf文件,美观,省事
最近项目需要导出企业风险报告,文件格式为pdf,于是搜了一大批文章都是什么Jasper Report,iText ,flying sauser ,都尝试了一遍,感觉不是我想要的效果, 需要自己调整好多 ...
- Itext生成pdf文件
来源:https://my.oschina.net/lujianing/blog/894365 1.背景 在某些业务场景中,需要提供相关的电子凭证,比如网银/支付宝中转账的电子回单,签约的电子合同等. ...
随机推荐
- sql 实现分页+分组并取出分组内的前n条数据
一.建表 if exists (select * from sysobjects where id = OBJECT_ID('[test]') and OBJECTPROPERTY(id, 'IsUs ...
- 开源实践分享:Ceph bluestore部署实践
https://blog.51cto.com/99cloud/2119884 Ceph bluestore部署 首先为大家分享Ceph bluestore具体该如何部署,使用环境如下• 单节点• Ce ...
- AcWing 241. 楼兰图腾 (树状数组)打卡
题目:https://www.acwing.com/problem/content/description/243/ 题意:给你n个点,问你 V 和 ^的图腾有多少个 思路:比如V 其实就是找当前点 ...
- 深入理解dijkstra+堆优化
深入理解dijkstra+堆优化 其实就这几种代码几种结构,记住了完全就可以举一反三,所以多记多练多优化多思考. Dijkstra 对于一个有向图或无向图,所有边权为正(边用邻接矩阵的形式给出), ...
- DBA-io
- ThinkPHP5使用jwt进行会话验证
以往,没有做过前后端分离的项目之前,都是服务器渲染的模板,然后用cookie和session进行账号的权限验证或者是登录状态的管理.后来接触了vue和小程序之后,在进行前后端分离的时候,就会遇到权限验 ...
- css代码思考:display和float
关于display <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- STL中六大组件
1)容器(Container),是一种数据结构,如list,vector,和deques ,以模板类的方法提供.为了访问容器中的数据,可以使用由容器类输出的迭代器: 容器(container)用于存放 ...
- python学习笔记:模块——自定义模块的3种导入方式
一.定义 模块就是用一堆的代码实现了一些功能的代码的集合,通常一个或者多个函数写在一个.py文件里,而如果有些功能实现起来很复杂,那么就需要创建n个.py文件,这n个.py文件的集合就是模块.如果不懂 ...
- multiple-cursors实在是太好用了
multiple-cursors实在是太好用了 */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #8 ...