实战 iTextSharp

原文 实战 iTextSharp

iTextSharp 是用来生成  PDF 的一个组件,在 1998 年夏天的时候,Bruno Lowagie ,iText 的创作者,参与了学校的一个项目,当时使用 HTML 来生成报告,但是,使用 HTML 打印的效果很不理想。最后,他发现,使用 PDF 可以完美解决打印问题,为了能够在各个系统中使用,iText 组件库诞生了。

最初的 iText 主要是支持 Java 語言。之後針對Microsoft .NET C Sharp做了一個版本,也就是我們今天要介紹的 iTextSharp。

目前,iTextSharp 的版本是 5.1.2,下载地址:http://sourceforge.net/projects/itextsharp/files/

其中主要包含了核心组件:itextsharp.dll

但是,直接使用它并不能处理中文,你还要下载两个组件。

在下载页面中,注意图中标注的 extras 文件夹。

点击之后,可以看到如下的下载:

注意把标注的两个压缩包下载下来,这是使用中文的关键。解开两个压缩之后可以看到下面的两个文件。

iTextAsianCmaps.dll

iTextAsian.dll

在创建的项目中,将这三个程序集都添加到项目的引用中。

// 必须先加入资源

BaseFont.AddToResourceSearch("iTextAsian.dll");

BaseFont.AddToResourceSearch("iTextAsianCmaps.dll");

 

//"UniGB-UCS2-H" "UniGB-UCS2-V"是简体中文,分别表示横向字 和 纵向字

//"STSong-Light"是字体名称

BaseFont bf = BaseFont.CreateFont("STSong-Light", "UniGB-UCS2-H", BaseFont.EMBEDDED);

 

// 也可以使用 TTF 字体

BaseFont bf0 = BaseFont.CreateFont("C:/WINDOWS/Fonts/SIMYOU.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);

 

// 创建 PDF 文档

iTextSharp.text.Document document

    = new iTextSharp.text.Document();

 

// 创建写入器实例,PDF 文件将会保存到这里

iTextSharp.text.pdf.PdfWriter.GetInstance(document,

        new System.IO.FileStream("Demo.pdf", System.IO.FileMode.Create)

    );

 

// 打开文档

document.Open();

 

iTextSharp.text.Font font = new iTextSharp.text.Font(bf);

 

//写入一个段落, Paragraph

document.Add(new Paragraph("你好, PDF !", font));

 

document.Close();

现在,你应该已经得到一个 PDF 文档了。

时间: 2024-10-05 14:10:39

实战 iTextSharp的相关文章

C# iTextSharp 生成 PDF

使用iTextSharp在Asp.Net中操作PDF系列文章 目录 http://www.cnblogs.com/CareySon/category/332146.html 实战 iTextSharp http://www.cnblogs.com/haogj/archive/2011/09/05/2167659.html

300+篇运维、数据库等实战资料免费下载(文章+PDF+视频,持续更新)

2017年已过去一半,在此小编为大家精心整理了2017上半年热点事件解析.实战技术资料以及特别策划短视频系列,希望可以帮助大家更深入地回顾上半年的技术热点,并储备更充足的技术干粮继续2017的下一半. PART 1 峰会回顾资料 云栖大会 [上海云栖大会]2017云栖大会上海峰会资料合计(现场视频+PDF下载) [成都云栖大会]2017云栖大会成都峰会资料合计(现场视频+PDF下载) [南京云栖大会]2017云栖大会南京峰会资料合计(现场视频+PDF下载) 技术峰会 [运维/DevOps峰会]

UI实战指南之留在电脑里的字体(一)

  进阶学习最实用教材!这一由@牛MO王涵 (BigDesign创始人/设计总监)编写的系列文章,从字体选择到提升设计感的技巧等都有涉猎,话题虽广,但全是实战过程中最关键的要素,而且是新手最关心的操作部分,学完直接上手工作 >>> 前言:我来了,这是U1系列新开篇章实战篇,不仅仅是适用于UI设计,甚至包含网页设计.平面设计.在文章中会更多的介绍一些操作上的教学,希望对新人们有帮助. 推荐字体 很多小伙伴在做设计的时候,无论是排版还是展示,都不太注重字体,或者有些太过于注重以至于用了很多种

品牌H5营销完全实战指南

那些百万PV的H5都是怎么做的?精心打造的H5要如何推广?H5技术将如何发展?本文一一为你解答 >>> 作者微信号,欢迎关注:Social Talent 对于H5这个名词想必大家已经很熟悉了,就在2014年,一项本来还不太成熟的技术在微信的社交舞台下大放异彩,让我们见识了"移动+社交"爆发的巨大能量. 然而这不是偶然,而是趋势.在具体介绍H5营销之前,我想和大家分享一份eMarketer的数据,其中显示了2012年-2018年品牌在不同媒体渠道的预算比重: 相比电视.

视频出炉:4月15日《阿里云RDS MySQL分支深度定制实战分享》

活动视频 <阿里云RDS MySQL分支深度定制实战分享> PDF地址:https://oss.aliyuncs.com/yqfiles/a5344b5961b367786a95620c636c4640.pdf 分享简介:阿里云RDS MySQL经过多年的积累,不断的进行性能优化,并定制了适合不同行业需求的功能,同时也向官方和社区贡献力量.本次主题主要介绍RDS MySQL分支的深度定制,包括功能扩展.资源管控.性能优化.数据安全.行业解决方案等. 分享者:赵建伟,现任阿里云数据库内核资深研发

113期:电子书《阿里巴巴技术实战2016年刊》重磅发布,免费下载!

本期头条   • [资料合集]首届阿里开源峰会回顾:讲义PDF+活动视频! • [在线峰会]即将直播:大数据技术峰会 • 微博红包技术最佳实践:架构及运维 • 阿里开源数据库AliSQL最佳实践   技术干货   如何使用好阿里云的网络安全隔离?深入分享阿里云ECS安全组实践经验 阿里云的ECS有经典网络和专有网络(VPC)两种网络类型.新业务建议优先考虑VPC网络,阿里云也将于年中开放经典网络的存量服务器向VPC网络迁移的功能.对于大家关注的云服务器的网络安全实践内容,我们特别邀请专家进行了深

阿里云Tech Insight 企业迁云实战专场强势来袭!

随着云计算的飞速发展,越来越多的企业用户选择以云平台为基础,来构建IT架构,聚焦企业的核心战略,以全面提升企业效率.那么,如何将IT架构高效平滑的迁移到云上,如何搭建高可靠高性能的业务系统,我们在Tech Insight的<企业迁云实战>专场将进行一一分享. <冰与火之歌 - Oracle上云研究> 数据库作为企业级应用的核心,也是迁云工作的最大挑战.该部分沉淀了阿里云在面向传统客户迁云技术服务过程中的各类问题和实践经验,从架构设计.实施部署.容灾方案,到产品选型.性能和可靠性测试

WKWebView与Js实战(OC版)

前言 上一篇专门讲解了WKWebView相关的所有类.代理的所有API.那么本篇讲些什么呢?当然是实战了! 本篇文章教大家如何使用WKWebView去实现常用的一些API操作.当然,也会有如何与JS交互的实战. 如果还没有阅读过WKWebView精讲(OC版),请先阅读,不然有可能看不懂下面所讲的内容. 效果图 通过本篇文章,至少可以学习到: OC如何给JS注入对象及JS如何给IOS发送数据 JS调用alert.confirm.prompt时,不采用JS原生提示,而是使用iOS原生来实现 如何监

探秘视频编码黑科技,窄带高清2.0视觉模型及场景实战

"黑科技"这个词已经成为了今年云栖大会的关键词.那么,在我们熟知的视频领域,什么才算是黑科技呢? 我们知道,在通常情况下,视频画质越好带宽费用肯定越高,带宽又是视频服务中占比很高的一项成本,很多开发者都在寻求效果与成本的平衡点.那么,有没有一种技术,能够在保证甚至提高视频画质的同时,降低带宽呢?如果有的话,小编觉得这一点可以算是黑科技了吧. 今天,小编就带大家来了解下刚刚在云栖大会上重磅发布的阿里云窄带高清2.0,看看它是如何超越压缩极限,在视觉效果和带宽成本中找到平衡的. 首先,我们