
Aspose.Imaging Image Merger Plugin for .NET 使它令人难以置信的简单 编程结合图像,无论是水平或垂直,同时保持形象质量. 这个强大的插件是专门为开发人员设计的,支持各种格式,允许您创建令人惊叹的照片合并无力。 在此指南中,您将学习如何在 C# 程序中结合或结合多张图片,包括如何 相结合图片 垂向 ,以及如何将 TIFF 文件组成一个.
主题覆盖:
C# API to Merge 图像 {#csharp-api-to-merge 图像}
要在 C# 中编程图像,我们将使用 Aspose.Imaging 为 .NET, 一个强大的 .NET 图像处理库 设计为高性能图像合并. 此 API 允许精确的图像操作,并支持各种格式. 您可以通过下载插件或通过 NuGet 安装,轻松地将 API 集成到您的 .NET 项目中:
PM> Install-Package Aspose.Imaging
合并多个图像在 C#
有两种主要方法将图像合并到一个单一的文件: 垂直图形凝聚力 和 水平图表凝结力。在垂向凝固力中,图画被粘贴在彼此之上,而在水平凝土力时,图片被侧面放置.
C# 合并图像垂直 {# 合并图像垂直}
要将图像垂直融入 C#,请遵循以下步骤:
- 指定图像的路径在一行序列中.
- 创建一份名单 尺寸 保存每个图像的尺寸.
- 计算结果图像的总高度和宽度.
- 创建一个对象的 StreamSource 班级,以一个新的开始 MemoryStream.
- 创建一个对象 JpegOptions 分类,并设置其选项.
- 立即 A JpegImage 以新图像为基础,以所指定的图标启动 JpegOptions 计算的尺寸.
- 通过图像列表,上传每一个到一个 RasterImage 对象.
- 创建 A 直角 每张图像,并将其添加到新图片中,使用 JpegImage.SaveArgb32像素() 方法.
- 在每次调节期间,增加粘贴高度.
- 最后,保存新图像,使用 JpegImage.Save(注) 方法.
下面是一个代码样本,展示如何在C#中垂直混合图像#:
| // Create a list of images | |
| string[] imagePaths = { "image1.jpg", "image2.jpg", "image3.jpg", "image4.jpg", "image5.png" }; | |
| // Get resulting image's size | |
| List<Size> imageSizes = new List<Size>(); | |
| foreach (string imagePath in imagePaths) | |
| { | |
| using (RasterImage image = (RasterImage)Image.Load(imagePath)) | |
| { | |
| imageSizes.Add(image.Size); | |
| } | |
| } | |
| int newWidth = imageSizes.Max(size => size.Width); | |
| int newHeight = imageSizes.Sum(size => size.Height); | |
| // Combine images into new one | |
| using (MemoryStream memoryStream = new MemoryStream()) | |
| { | |
| // Create output source | |
| StreamSource outputStreamSource = new StreamSource(memoryStream); | |
| // Create jpeg options | |
| JpegOptions options = new JpegOptions() { Source = outputStreamSource, Quality = 100 }; | |
| // Create output image | |
| using (JpegImage newImage = (JpegImage)Image.Create(options, newWidth, newHeight)) | |
| { | |
| int stitchedHeight = 0; | |
| // Merge images | |
| foreach (string imagePath in imagePaths) | |
| { | |
| using (RasterImage image = (RasterImage)Image.Load(imagePath)) | |
| { | |
| Rectangle bounds = new Rectangle(0, stitchedHeight, image.Width, image.Height); | |
| newImage.SaveArgb32Pixels(bounds, image.LoadArgb32Pixels(image.Bounds)); | |
| stitchedHeight += image.Height; | |
| } | |
| } | |
| // Save the merged image | |
| newImage.Save("merged-image.jpg"); | |
| } | |
| } |
C# 混合图像 垂直 {# 混合图像 垂直}
要在 C# 中垂直组合图像,请遵循以下步骤:
- 指定图像的路径在一行序列中.
- 创建一份名单 尺寸 保存每个图像的尺寸.
- 计算结果图像的总高度和宽度.
- 创建一个新的来源使用 FileCreateSource(String、Boolean) 并以文件的路径启动它.
- 创建一个对象 JpegOptions 分类,并设置其选项.
- 立即 A JpegImage 以新图像为基础,以所指定的图标启动 JpegOptions 计算的尺寸.
- 通过图像列表,上传每一个到一个 RasterImage 对象.
- 创建 A 直角 每张图像,并将其添加到新图片中,使用 JpegImage.SaveArgb32像素() 方法.
- 增加在每次 iteration 期间的粘贴宽度.
- 一旦完成,保存新图像使用 JpegImage.Save(注) 方法.
下面是一个代码样本,展示了如何在C#中垂直混合多张图像#:
| // Create list of images | |
| string[] imagePaths = { "image1.jpg", "image2.jpg", "image3.jpg", "image4.JPG", "image5.png" }; | |
| // To create a temporary image | |
| string tempFilePath = "temp.jpg"; | |
| // Get resulting image's size | |
| List <Size> imageSizes = new List<Size>(); | |
| 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); | |
| // Combine images into new one | |
| Source tempFileSource = new FileCreateSource(tempFilePath, isTemporal: true); | |
| // Create jpeg options | |
| JpegOptions options = new JpegOptions() { Source = tempFileSource, Quality = 100 }; | |
| using (JpegImage newImage = (JpegImage)Image.Create(options, newWidth, newHeight)) | |
| { | |
| int stitchedWidth = 0; | |
| // Merge images | |
| foreach (string imagePath in imagePaths) | |
| { | |
| using (RasterImage image = (RasterImage)Image.Load(imagePath)) | |
| { | |
| Rectangle bounds = new Rectangle(stitchedWidth, 0, image.Width, image.Height); | |
| newImage.SaveArgb32Pixels(bounds, image.LoadArgb32Pixels(image.Bounds)); | |
| stitchedWidth += image.Width; | |
| } | |
| } | |
| // Save the merged image | |
| newImage.Save(outputPath); | |
| } |
C# Image Merging API - 获得免费许可证
你可以 获得免费的临时许可证 将图像结合起来,没有评估限制.
结论
在本文中,您已经学会了如何通过 C# 编程将图像融入一个单一文件。 提供的代码样本展示如何从 垂直 和 高水平 中编写图画,包括 Photo Merge Vertically 的技术, TIFF Files Combined into One,以及使用 Aspose.Imaging Merg 人们在说什么. 此外,您可以自由地通过我们的方式与我们分享您的请求 论坛. 您还可以找到有用的资源,了解如何 Combine Images Vertically Online 以及使用 Aspose.Imaging Merge 为您的图像处理需求.