Jak sloučit fotografie v C#

Toto téma se zabývá jak sloučit photos v C#. Zahrnuje konfiguraci prostředí, proces krok za krokem a spustitelný úryvek kódu pro vývoj spojovače fotografií v C#. Tyto informace můžete použít pro práci s touto funkcí v jakémkoli prostředí podporovaném .NET v různých operačních systémech.

Kroky ke sloučení fotografií v C#

  1. Nastavte prostředí tak, aby fungovalo s Aspose.Imaging for .NET pomocí pluginu NuGet správce balíčků
  2. Vytvořte seznam obrázků a získejte výslednou velikost obrázku
  3. Zkombinujte obrázky do nového a vytvořte výstupní zdroj
  4. Nastavte různé vlastnosti pomocí objektu třídy JpegOptions
  5. Exportujte sloučený obrázek pomocí třídy JpegImage

Tyto kroky shrnují celý proces kombinace fotografií v C#. Nejprve vytvořte seznam více obrázků, které chcete sloučit do jedné fotografie. Následně vytvořte nový obrázek a vykreslete jej do výstupního obrázku, než jej uložíte na disk nebo do streamu v závislosti na vašich potřebách.

Kód pro sloučení fotografií v 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");
}
}

Tento fragment kódu je dostatečný pro vývoj kombinátoru obrázků v C#. Spolupracuje s třídou JpegImage k vytvoření výstupního obrazu při výpočtu rozměrů zdrojových obrázků. Poté pokračuje vytvořením obdélníku a uložením sloučeného výstupního obrazu pomocí metody Save. Kromě toho můžete upravit několik vlastností výstupního obrazu pomocí třídy JpegOptions, jako je typ komprese, kvalita, typ barvy, jednotka rozlišení atd. podle vašich požadavků.

V tomto článku jsme se naučili proces provádění sloučení obrázků v C#. Pokud chcete otočit obrázek, přečtěte si článek na jak otočit obrázek v C#.

 Čeština