在某些情况下,您可能需要将 PNG、JPG 或其他图像文件转换为 PDF 文档。这在将扫描的发票页面转换为 PDF 等场景中可能很有用。在本文中,您将学习如何在 C# 中将图像转换为 PDF 格式。我们将演示以编程方式将图像转换为 PDF 以及将多个图像转换为 PDF。
C# Image to PDF Converter API - 免费下载
对于图像到 PDF 的转换,我们将使用 Aspsoe.PDF for .NET。它是一个功能强大的 PDF API,可让您在 .NET 应用程序中创建和操作 PDF 文件。此外,它还提供 PDF 文件的高保真来回转换。您可以 下载 API 或使用 NuGet 安装它。
PM> Install-Package Aspose.Pdf
在 C# 中将图像转换为 PDF
我们先来看看如何在 C# 中将单个图像转换为 PDF 文件。以下是执行此操作的步骤。
- 创建 Document 类的实例。
- 使用 Document.Pages.Add() 方法将新的 Page 添加到 PDF 文档并设置页面的属性。
- 将图像文件加载到 FileStream 对象中。
- 使用 Page.Paragraphs.Add(Image) 方法将新的 Image 添加到页面。
- 使用 Image.ImageStream 属性设置图像的流。
- 最后,使用 Document.Save(String) 方法保存 PDF 文档。
以下代码示例展示了如何在 C# 中将 PNG 图像转换为 PDF。
// 创建一个新文档
Document doc = new Document();
// 图片文件的路径
string imageFile = @"aspose.png";
// 将页面添加到文档的页面集合
var page = doc.Pages.Add();
// 将图像加载到流中
FileStream imageStream = new FileStream(imageFile, FileMode.Open);
// 设置边距,以便图像适合等。
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Aspose.Pdf.Rectangle(0, 0, 400, 400);
// 创建图像对象
Image image1 = new Image();
// 将图像添加到该部分的段落集合中
page.Paragraphs.Add(image1);
// 设置图片文件流
image1.ImageStream = imageStream;
// 保存生成的 PDF 文件
doc.Save("image-to-pdf.pdf");
在 C# 中将多个图像转换为 PDF
以下是在 C# 中将多个图像转换为单个 PDF 文件的步骤。
- 创建 Document 类的实例。
- 使用 Directory.GetFiles(string) 方法获取数组中图像文件名称的列表。
- 对于列表中的每个图像文件,请执行以下操作:
- 使用 Document.Pages.Add() 方法将新的 Page 添加到 PDF 文档并设置页面的属性。
- 将图像文件加载到 FileStream 对象中。
- 使用 Page.Paragraphs.Add(Image) 方法将新的 Image 添加到页面。
- 使用 Image.ImageStream 属性设置图像的流。
- 最后,使用 Document.Save(String) 方法保存 PDF 文档。
以下代码示例显示了在 C# 中将多个图像转换为单个 PDF。
// 创建一个新文档
Document doc = new Document();
// 访问文件夹中的图像文件
string[] fileList = Directory.GetFiles(@"D:/images/");
foreach (String file in fileList)
{
// 将页面添加到文档的页面集合
var page = doc.Pages.Add();
// 将图像加载到流中
FileStream imageStream = new FileStream(file, FileMode.Open);
// 设置边距,以便图像适合等。
page.PageInfo.Margin.Bottom = 0;
page.PageInfo.Margin.Top = 0;
page.PageInfo.Margin.Left = 0;
page.PageInfo.Margin.Right = 0;
page.CropBox = new Pdf.Rectangle(0, 0, 400, 400);
// 创建图像对象
Image image1 = new Image();
// 将图像添加到该部分的段落集合中
page.Paragraphs.Add(image1);
// 设置图片文件流
image1.ImageStream = imageStream;
}
// 保存生成的 PDF 文件
doc.Save("multiple-images-to-pdf.pdf");
图像到 PDF C# 转换器 - 获得免费许可证
您可以通过 获得免费的临时许可证 将图像转换为 PDF,而不受评估限制。
C# .NET PDF API - 阅读更多
您可以使用 文档 探索更多关于 Aspose.PDF for .NET 的信息。如果您有任何疑问,请随时通过我们的 论坛 告诉我们。
结论
在本文中,您学习了如何在 C# 中将图像转换为 PDF 格式。此外,您还了解了如何以编程方式将多个图像转换为单个 PDF。因此,您可以在应用程序中轻松执行任何类型的图像到 PDF 的转换。