NuGet包下载最新iTextSharp
操作PDF文档时,打印是常见的需求之一。
将传过来的 json 生成 image 后,再把所有图片转成 PDF
要求:
1、PDF 打印出来的图片大小要符合实际要求的大小
2、PDF 文件(test.pdf)的纸张大小就是图片大小
Document pdfDocument = new Document(new iTextSharp.text.Rectangle(0, 0), 0, 0, 0, 0); string fileName = "C:\\Users\\Admin\\Desktop\\output\\test.pdf"; iTextSharp.text.pdf.PdfWriter.GetInstance(pdfDocument, new FileStream(fileName, FileMode.Create, FileAccess.ReadWrite)); pdfDocument.Open(); //Json生成的System.Drawing.Image image image = printLayout.Draw(); //转iTextSharp.text.Image ImageConverter imgconv = new ImageConverter(); byte[] bytes = (byte[])imgconv.ConvertTo(image, typeof(byte[])); Stream stream = new MemoryStream(bytes); iTextSharp.text.Image images; images = iTextSharp.text.Image.GetInstance(stream); //根据实际需求,换算图片大小,并添加到pdf中 float imageWidth = image.Width / 2.105f; float imageHeight = image.Height / 2.105f; images.ScaleToFit(imageWidth, imageHeight); pdfDocument.SetPageSize(new iTextSharp.text.Rectangle(0, 0, imageWidth, imageHeight)); pdfDocument.NewPage(); pdfDocument.Add(images); pdfDocument.Close();
标签:C#,text,Image,iTextSharp,new,PDF,image,pdfDocument From: https://www.cnblogs.com/fishanan/p/16985229.html