C# 将多个图片合成一个PDF

一开始根据大部分网上的方式使用iTextSharp组件合成PDF,在初始化pdfdocument对象时,提示“未将对象引用设置为对象的实例”。

iTextSharp.text.pdf.PdfWriter.GetInstance(document, new FileStream(@"D:\1.pdf", FileMode.Create, FileAccess.ReadWrite));

不知道是否跟iTextSharp版本有关系不,尝试了降低了版本仍然存在该报错。

于是使用了itext7组件进行合成pdf

string[] files = { @"D:\101\1.jpg", @"D:\101\2.jpg" };using MemoryStream stream = new MemoryStream();using (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(stream))){for (int i = 0; i < files.Length; i++){ImageData imageData = ImageDataFactory.Create(files[i]);var pageSize = new PageSize(imageData.GetWidth(), imageData.GetHeight());PdfPage page = pdfDocument.AddNewPage(pageSize);PdfCanvas canvas = new PdfCanvas(page, true);canvas.AddImageFittedIntoRectangle(imageData, pageSize, true);}}using FileStream fs = new FileStream(@"D:\101\1.pdf", FileMode.OpenOrCreate);using BinaryWriter w = new BinaryWriter(fs);w.Write(stream.ToArray());


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部