欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > C# 将图片转换为PDF文档

C# 将图片转换为PDF文档

2025/5/5 12:49:37 来源:https://blog.csdn.net/Eiceblue/article/details/144772895  浏览:    关键词:C# 将图片转换为PDF文档

将图片(JPG、PNG)转换为PDF文件可以帮助我们更好地保存和分享图片。此外,PDF文件还具有强大的安全特性,将图片转换为PDF后,我们可以通过设置密码来文件内容不被泄露。本文将介绍如何将JPG/PNG图片转换为PDF文档。

文章目录

    • C# 将单张图片转换为PDF文档
    • C# 将多张图片转换到一个PDF文档

此教程可以使用第三方免费库 Free Spire.PDF for .NET,但需要注意该免费库有一定的页数限制。

开始前,我们可以通过以下链接下载产品包后手动添加引用,或者直接通过 NuGet 安装。
https://www.e-iceblue.cn/Downloads/Free-Spire-PDF-NET.html

C# 将单张图片转换为PDF文档

Free Spire.PDF for .NET提供的图片转PDF的方法是将加载的图片绘制到PDF页面上实现的,主要步骤如下:

  1. 创建一个 PDF文档,然后将其页边距设置为0。
  2. 使用 Image.FromFile() 方法加载图片,然后获取图片的宽度和高度。
  3. 通过 PdfDocument.Pages.Add() 方法添加一个与图片大小相同的PDF页面。
  4. 根据图片创建 PdfImage 对象。
  5. 使用 PdfPageBase.Canvas.DrawImage() 方法在PDF页面上绘制PdfImage对象。
  6. 使用 PdfDocument.SaveToFile() 方法保存生成的 PDF 文档。

示例代码:

ing System.Drawing;
using Spire.Pdf;
using Spire.Pdf.Graphics;namespace ConvertImageToPdfWithSameSize
{class Program{static void Main(string[] args){//创建PdfDocument对象PdfDocument pdf = new PdfDocument();//将页边距设为0pdf.PageSettings.SetMargins(0);//加载图片Image image = Image.FromFile(@"C:\Users\Administrator\Desktop\work.jpg");//获取图片尺寸float width = image.PhysicalDimension.Width;float height = image.PhysicalDimension.Height;//创建PdfImage对象PdfImage pdfImage = PdfImage.FromFile(@"C:\Users\Administrator\Desktop\work.jpg");//添加一个与图片大小相同的PDF页面PdfPageBase page = pdf.Pages.Add(new SizeF(width, height));//在页面上绘制图片page.Canvas.DrawImage(pdfImage, 0, 0, pdfImage.Width, pdfImage.Height);//保存PDFpdf.SaveToFile("图片转Pdf.pdf");}}
}

图片转PDF

C# 将多张图片转换到一个PDF文档

Free Spire.PDF for .NET也可以将一个文件夹中的多张图片绘制到一个PDF文档的不同页面上,主要步骤如下:

  1. 创建一个 PDF文档,然后将其页边距设置为0。
  2. 获取存储图片的文件夹。
  3. 遍历文件夹中的每个图像文件,并获取每一张图片的宽度和高度。
  4. 通过 PdfDocument.Pages.Add() 方法在PDF文档中添加与图片大小相同的PDF页面。
  5. 使用 PdfPageBase.Canvas.DrawImage() 方法在页面上绘制各个图片。
  6. 使用 PdfDocument.SaveToFile() 方法保存生成的PDF文档。

示例代码:

using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;
using System.IO;namespace ConvertMultipleImagesIntoPdf
{class Program{static void Main(string[] args){//创建PdfDocument对象PdfDocument pdf = new PdfDocument();//将页边距设为0pdf.PageSettings.SetMargins(0);//获取存储图片的文件夹DirectoryInfo folder = new DirectoryInfo(@"C:\Users\Administrator\Desktop\图片");//遍历文件夹中的图片foreach (FileInfo file in folder.GetFiles()){//加载图片Image image = Image.FromFile(file.FullName);//获取图片尺寸float width = image.PhysicalDimension.Width;float height = image.PhysicalDimension.Height;//添加与图片大小相同的PDF页面PdfPageBase page = pdf.Pages.Add(new SizeF(width, height));//创建PdfImage对象PdfImage pdfImage = PdfImage.FromFile(file.FullName);//在页面上绘制图片page.Canvas.DrawImage(pdfImage, 0, 0, pdfImage.Width, pdfImage.Height);}//保存PDFpdf.SaveToFile("多图转Pdf.pdf");pdf.Dispose();}}
}

多张图片转换为PDF


– 如需在.NET 程序实现其他PDF文档的操作,如创建、读取、添加图片、表格等,可以从以下链接中查看相关教程:
https://www.e-iceblue.cn/spirepdfnet/spire-pdf-for-net-program-guide-content.html

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词