网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 论文素材 设计下载 最新论文 下载排行 论文上传 在线投稿 联系我们
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > C# > 正文
用C#制作PDF文件全攻略
来源:Http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/14
下载{$ArticleTitle}原创论文样式
子也演示了如何创建和使用一个原始图片。

public static Image getInstance(int width, int height, int components, int bpc, byte data)

本例中创建了一个100×100象素的图片,因为每个象素用RGB描述,所以图片大小为100×100×3字节。

System.Drawing.Bitmap
示例代码0610是一个比较高级的话题,理由如下:

首次使用到了System.Drawing.Bitmap类。该类在.net框架中,可以使用更多类型的图片,如TIFF、GIF,而这些图片在iText中均不支持,你可以检查一下.net框架看看你需要的图片格式是否得到支持。
前面的例子中,还有一些事情要注意:当添加一个图片时不会出现什么问题,文字始终浮于图片上面,本例中,我们希望图片浮在文字上面。这也是为什么我们将使用iTextSharp.text.pdf.PdfContentByte类的原因(见第十章)。
你将发现使用的图片为透明的gif格式,你可以到http://itextsharp.sourceforge.net/examples/h.gif下载得到。
TIFF和CCITT
示例代码0611也是一个比较高级的话题,例中转换一个TIFF文件到PDF文件。

u 图片遮罩

示例代码0613在,我们创建了一个用作遮罩的图片

 

 

 

 

 

3C

 

 

 

 

7E

 

 

 

 

E7

 

 

 

 

C3

 

 

 

 

C3

 

 

 

 

E7

 

 

 

 

7E

 

 

 

 

3C

 

 

 

 

 

 

 

 

 

该图片尺寸为8×8象素,每组一个字节,使用makeMask()方法可以转换成遮罩。

byte maskr = {(byte)0x3c, (byte)0x7e, (byte)0xe7, (byte)0xc3, (byte)0xc3, (byte)0xe7, (byte)0x7e, (byte)0x3c};

Image mask = Image.getInstance(8, 8, 1, 1, maskr);

mask.makeMask();

mask.setInvertMask(true);

我们可以用该遮罩直接遮住其他图片的一部分。

PdfContentByte cb = writer.DirectContent;

Image image = Image.getInstance("vonnegut.gif");

image.ImageMask = mask;

或者我们将该遮罩用于模板遮罪中。

PdfContentByte cb = writer.DirectContent;

cb.setRGBColorFill(255, 0, 0);

cb.addImage(mask, mask.scaledWidth() * 8, 0, 0, mask.scaledHeight() * 8, 100, 400);

关于ContentByte对象更多信息请参见第十章。

图片和其他对象
u 图片在块中

有时,可以方便地将图片置于块中,通过一定偏移将一个图片置于块中:

Chunk ck = new Chunk(img, 0, -5);

具体代码见示例代码0614,我们可以添加该特殊图片块到短句、表格等,本例中的图片请到http://itextsharp.sourceforge.net/examples/pngnow.png下载

u 图片在表格中

你可以将图片添加到单元格中,但有两个副作用:

l 表格的宽度是确定,当图片超出单元格的宽度时,将自动缩小。

l 你不能进行文字绕排和为图片添加下划线。

参见示例代码0615。

u 图片链接注释

如果你希望得到一个可点击的图片,或者想添加链接注释到图片上,你需要创建一个Annotation对象,并添加到图片上,你不需要指定位置(你可以使用0,0,0,0),该位置会内部更新以适合该图片。

gif.Annotation = new Annotation(0, 0, 0, 0, "Chap1102b.pdf", 3);

jpeg.Annotation = new Annotation("picture", "These are my children", 0, 0, 0, 0);

参加示例代码0616。

第二部分 其他文档格式
第七章 XML和 (X)HTML
本章主要介绍了如何利用iText控件生成XLM文档和(X)HTML文档,但我们对这些并不感兴趣,故只介绍本章中提到的将XML转为PDF。

在第一章中,我们通过5步生产一个PDF文件,为了将一个XML文件转换为PDF文件,只需重写第3和第4步,第5步由解析器自动处理。

//第3步:创建一个解析器并设置文档句柄:

iTextHandler h = new iTextHandl

  • 下一篇资讯: C#中UDP通信程序
  • 网学推荐

    免费论文

    原创论文

    浏览:
    设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
    版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved
    湘ICP备09003080号