在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.背景 在某些业务场景中,需要提供相关的电子凭证,比如网银/支付宝中转账的电子回单,签约的电子合同等. ...
随机推荐
- 洛谷P1364 医院设置(Floyd)
题目描述 设有一棵二叉树,如图: 其中,圈中的数字表示结点中居民的人口.圈边上数字表示结点编号,现在要求在某个结点上建立一个医院,使所有居民所走的路程之和为最小,同时约定,相邻接点之间的距离为l.如上 ...
- 常用js校验
身份证 function isCardNo(idCard){ //15位和18位身份证号码的正则表达式 var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0 ...
- layui导出表格全部数据
layui自带的导出表格,只能导出当前页面,如果当前页包含全部数据,那不就是导出全部数据了吗,所以我给导出事件单独定义了一个请求,当触发这个请求时,在后台查询数据时不要按接收的page 和 limit ...
- CF 1150 D Three Religions——序列自动机优化DP
题目:http://codeforces.com/contest/1150/problem/D 老是想着枚举当前在给定字符串的哪个位置,以此来转移. 所以想对三个串分别建 trie 树,然后求出三个t ...
- js、jQuery实现文字上下无缝轮播、滚动效果
因项目需要实现消息通知上下无缝轮播的效果,所以写了一下,在这个分享出来,希望再次遇到此需求的道友,可以直接拷贝来用,节约一点不必要的时间. 原生JS版本 <!DOCTYPE html> & ...
- springmvc缓存 - cache
前几篇文章已经搭建了一个基本的springmvc demo,现在我们来完善下. 相信大家写程序的时候都接触过缓存的概念,也都知道,数据量大的时候缓存对于提高效率是很显著的.而缓存一般包括前台静态 ...
- php 字符串 定界符 json_last_error()
字符串的3种赋值 1:单引号 $str = '111111111111 '; 2:双引号 $str =" 11111111111 "; 3:定界符 $str = <<& ...
- NIO浅析(一)
一:NIO与IO的区别 1.NIO面对的是缓冲区,IO面对的是流 2.NIO是非阻塞的,IO是阻塞的 3.NIO中引入了选择器 二:既然NIO面对的是缓冲区,那就先来了解缓冲区 1.NIO中Buffe ...
- promise的基本用法
// Promise 对象,可以保存状态 //Promise 第一步 // 异步代码 写在 Promise的函数中 第二步 const promise = new Promise((resolve, ...
- MySQL修改数据库root密码方法
方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass ...