如何在 C# 中将 JPG 合并为 JPG

如何在 C# 中将 JPG 合并为 JPG

让我们使用这个 C# 图像 开发一个 JPG 到 JPG 的合并。当您需要将多个图像合并到一个图像文件中时,有很多场景。因此,将整个过程自动化将使您的业务软件具有竞争优势。因此,在这篇博文中,我们将学习如何使用这个强大的库提供的方法在 C# 中将 JPG 合并为 JPG。在本文结束时,您将能够编写代码片段来实现此功能。

本指南将介绍以下部分:

C#图像库安装

最好的部分是您可以轻松安装这个企业级库。但是,下载 其 DLL 或通过在 NuGet 包管理器中运行以下命令来安装它。

Install-Package Aspose.Imaging

如何在 C# 中将 JPG 合并为 JPG

到目前为止,您已经在 .NET 应用程序中安装了这个 C# 图像库。因此,您已准备好开始编写代码以编程方式构建 JPG 到 JPG 的合并。

请按照以下步骤和代码片段进行操作:

  1. 调用 Size 属性以获取生成的图像大小。
  2. 循环遍历图片路径,通过调用Image类的Load方法,将图片一张一张加载到imageSizes列表中。
  3. 计算图像的宽度和高度。
  4. 初始化 FileCreateSource 类的新实例。
  5. 创建 JpegOptions 类的新对象。
  6. 调用使用指定的创建选项创建新图像的 Create 方法。
  7. 循环遍历图片,调用Load方法加载图片。
  8. 使用指定的位置和大小初始化 Rectangle 结构的新实例。
  9. 调用 SaveArgb32Pixels 方法来保存 32 位 ARGB 像素。
  10. 调用Save方法,根据保存选项将图片数据以指定的文件格式保存到指定的流中。

将以下代码复制并粘贴到您的主文件中:

using Aspose.Imaging;
using Aspose.Imaging.FileFormats.Jpeg;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
string[] imagePaths = {"image.jpg", "image.jpg" };
string outputPath =   "result1.jpg";
string tempFilePath = "temp.jpg";
// 调用 Size 属性以获取生成的图像大小。 
List<Size> imageSizes = new List<Size>();
// 循环遍历图片路径,调用Image类的Load方法,一张一张的加载图片,添加到imageSizes列表中。
foreach (string imagePath in imagePaths)
{
    using (RasterImage image = (RasterImage)Image.Load(imagePath))
    {
        imageSizes.Add(image.Size);
    }
}
// 计算图像的宽度和高度。 
int newWidth = imageSizes.Sum(size => size.Width);
int newHeight = imageSizes.Max(size => size.Height);
// 初始化 FileCreateSource 类的新实例。 
Source tempFileSource = new FileCreateSource(tempFilePath, isTemporal: true);
// 创建 JpegOptions 类的新对象  
JpegOptions options = new JpegOptions() { Source = tempFileSource, Quality = 100 };
// 调用使用指定的创建选项创建新图像的 Create 方法。 
using (JpegImage newImage = (JpegImage)Image.Create(options, newWidth, newHeight))
{
    // 遍历图片,调用Load方法加载图片。 
    int stitchedWidth = 0;
    foreach (string imagePath in imagePaths)
    {
        using (RasterImage image = (RasterImage)Image.Load(imagePath))
        {
            // 使用指定的位置和大小初始化 Rectangle 结构的新实例。 
            Rectangle bounds = new Rectangle(stitchedWidth, 0, image.Width, image.Height);
            // 调用 SaveArgb32Pixels 方法来保存 32 位 ARGB 像素。
            newImage.SaveArgb32Pixels(bounds, image.LoadArgb32Pixels(image.Bounds));
            stitchedWidth += image.Width;
        }
    }
    // 调用 Save 方法,根据保存选项将图片的数据以指定的文件格式保存到指定的流中。 
    newImage.Save(outputPath);
}

您可以在下图中看到输出:

JPG 到 JPG 合并

获得免费许可证

您可以使用 免费临时许可证 来试用 API,而不受评估限制。

加起来

这是这篇博文的结尾。您已经学习了如何使用这个 C# 图像库在 C# 中将 JPG 合并到 JPG。此外,您可以通过编程方式为您的业务应用程序构建 JPG 到 JPG 的合并。此外,不要忘记访问 文档 以了解其他很酷的功能。

此外,我们建议您遵循我们的 入门指南

最后,conholdate.com 正在撰写新的博客文章。因此,请保持联系以获取定期更新。

问一个问题

您可以在我们的 论坛 上告诉我们您的问题或疑问。

常见问题

如何将 JPG 文件合并为一个 JPG?

调用Load方法,创建JpegOptions类的实例,调用Save方法保存文件。此外,您可以访问此 链接 以了解用 C# 编写的完整代码片段。

如何将 JPEG 文件合并到一个文档中?

您可以利用此 C# 图像 以编程方式将 JPEG/JPG 图像文件合并到一个文档中。

也可以看看