كيفية دمج الصور في C#

يغطي هذا الموضوع كيفية دمج photos في C#. وهو يشمل تكوين البيئة، والعملية خطوة بخطوة، ومقتطف تعليمات برمجية قابل للتشغيل لتطوير أداة ربط الصور في C#. يمكنك تطبيق هذه المعلومات للعمل مع هذه الميزة في أي من البيئات المدعومة بـ .NET في أنظمة تشغيل مختلفة.

خطوات دمج الصور في C#

  1. قم بإعداد البيئة للعمل مع Aspose.Imaging for .NET باستخدام البرنامج المساعد NuGet package manager
  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#.

 عربي