Як об'єднати фотографії в C#

Ця тема охоплює як об’єднати photos у C#. Він охоплює конфігурацію середовища, покроковий процес і фрагмент коду для розробки з’єднувача фотографій на C#. Ви можете застосувати цю інформацію для роботи з цією функцією в будь-якому середовищі, що підтримується .NET у різних операційних системах.

Кроки для об’єднання фотографій у C#

  1. Налаштуйте середовище для роботи з Aspose.Imaging for .NET за допомогою плагіна менеджера пакетів NuGet
  2. Створіть список зображень і отримайте отриманий розмір зображення
  3. Об’єднайте зображення в нове та створіть вихідне джерело
  4. Встановіть різні властивості за допомогою об’єкта класу JpegOptions
  5. Експортуйте об’єднане зображення за допомогою класу JpegImage

Ці кроки підсумовують увесь процес комбінування фотографій у C#. Перш за все, створіть список із кількох зображень, які потрібно об’єднати в одну фотографію. Отже, створіть нове зображення та відтворіть його у вихідному зображенні перед збереженням на диску або в потоці залежно від ваших потреб.

Код для об’єднання фотографій у C#

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;
using Aspose.Imaging.Sources;
class Program
{
static void Main(string[] args) // Merge images into one image in C#
{
// Set PDF license
new Aspose.Imaging.License().SetLicense("License.lic");
// Create a list of images
string[] imagePaths = { "picture1.jpg", "picture2.jpg", "picture3.jpg" };
// Get resulting image's size
List<Aspose.Imaging.Size> imageSizes = new List<Aspose.Imaging.Size>();
foreach (string imagePath in imagePaths)
{
using (RasterImage image = (RasterImage)Aspose.Imaging.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()
{ Quality = 100, Source = outputStreamSource };
// Create output image
using (Aspose.Imaging.FileFormats.Jpeg.JpegImage newImage =
(Aspose.Imaging.FileFormats.Jpeg.JpegImage)Aspose.Imaging.Image.Create(options, newWidth, newHeight))
{
int stitchedHeight = 0;
// Merge images
foreach (string imagePath in imagePaths)
{
using (RasterImage image = (RasterImage)Aspose.Imaging.Image.Load(imagePath))
{
Aspose.Imaging.Rectangle bounds = new Aspose.Imaging.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");
}
}
System.Console.WriteLine("Done");
}
}

Цього фрагмента коду достатньо для розробки комбінатора зображень у C#. Він працює з класом JpegImage для створення вихідного зображення під час обчислення розмірів зображення вихідних зображень. Потім створюється прямокутник і зберігається об’єднане вихідне зображення за допомогою методу «Зберегти». Крім того, ви можете налаштувати кілька властивостей вихідного зображення за допомогою класу JpegOptions, як-от тип стиснення, якість, тип кольору, одиниця роздільної здатності тощо відповідно до ваших вимог.

У цій статті ми навчилися виконувати об’єднання зображень у C#. Якщо ви хочете повернути зображення, прочитайте статтю на як повернути зображення в C#.

 Українська