Ինչպես միաձուլել լուսանկարները 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 դասի հետ՝ սկզբնաղբյուր նկարների պատկերի չափերը հաշվարկելիս ելքային պատկեր ստեղծելու համար: Այնուհետև այն շարունակում է ստեղծել ուղղանկյուն և պահպանել միաձուլված ելքային պատկերը՝ օգտագործելով Save մեթոդը: Ավելին, դուք կարող եք հարմարեցնել ելքային պատկերի մի քանի հատկություններ JpegOptions դասի հետ, ինչպիսիք են սեղմման տեսակը, որակը, գույնի տեսակը, լուծման միավորը և այլն՝ ըստ ձեր պահանջների:

Այս հոդվածում մենք սովորել ենք image merge C#-ում կատարելու գործընթացը: Եթե ցանկանում եք պտտել պատկերը, ապա կարդացեք հոդվածը ինչպես պտտել պատկերը C#-ում-ում:

 Հայերեն