Aspose.Pdf合并图片到PDF文件

将图片和PDF文件合成为新的PDF文件,可以先将图片转换为PDF文件,
然后合成PDF即可,
将图片转换成PDF文件有如下方法:

  • Aspose.Pdf.Document
  • Aspose.Pdf.Generator.Pdf

Aspose.Pdf.Document

一个PDF文档包含许多页面,而每个页面又是由多个段落构成,
段落可以是文本、图片、表格、悬浮框、图表、附件等,
所以把图片转换成PDF只要用段落将图片封装起来即可

Document doc = new Document();
Page page = doc.Pages.Add();

// 创建Image对象,命名空间是必要的,因为在别的命名空间也有Image类
Aspose.Pdf.Image image = new Aspose.Pdf.Image();

// 设置Image数据源
// 如果是本地文件或Web图片,直接设置File属性即可
image.File = @"C:\test.jpg"; // "http://localhost/test.jpg"
// 如果是Stream类型,设置ImageStream属性
// image.ImageStream = stream;

// 添加图片到页面段落
page.Paragraphs.Add(image);

doc.Save(@"C:\outputtest.pdf");

Aspose.Pdf.Generator.Pdf

与上述方法相同,只不过使用了Section而不是Page

Aspose.Pdf.Generator.Pdf pdf = new Aspose.Pdf.Generator.Pdf();
Aspose.Pdf.Generator.Section section = new Aspose.Pdf.Generator.Section(pdf);

// 创建Image,并设置数据源
Aspose.Pdf.Generator.Image image = new Aspose.Pdf.Generator.Image(section);
// 数据源的设置方式相同,只不过这次设置的是`Image.ImageInfo.File`和`Image.ImageInfo.ImageStream`属性
image.ImageInfo.File = "http://localhost/test.jpg";

section.Paragraphs.Add(image);
pdf.Sections.Add(section);

pdf.Save(@"C:\outputtest.pdf");

这两种方法的输出可以是到本地文件,也可以是Stream对象,
在配合合成PDF就可以实现图片和PDF的合并了

参考链接:
Convert an Image to PDF
Working with Images (Generator)

posted @ 2016-06-30 23:41  baiyangcao  阅读(5342)  评论(0编辑  收藏  举报