C# Image转PDF(iTextSharp)
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();
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人