Oříznutí obrazu, také známé jako maskování obrazu nebo extrakce objektu, je technika používaná v grafickém designu a zpracování obrazu. Používá se k izolaci konkrétních objektů nebo předmětů z obrazu. V tomto článku prozkoumáme implementaci ořezávání obrázků v C#. Naučte se krok za krokem techniky extrahování objektů a vylepšení vašich návrhů.
V tomto článku se budou zabývat následujícími tématy:
- C# Image Clipping API – bezplatné stažení
- Jak implementovat C# Image Clipping
- Extrahovat objekt z obrázku v C#
- Bezplatné výukové zdroje
C# Image Clipping API – bezplatné stažení
Pro implementaci ořezávání obrázků v C# budeme používat API Aspose.Drawing for .NET. Jedná se o multiplatformní 2D grafickou knihovnu pro programové kreslení textu, geometrií a obrázků. Umožňuje načítání, ukládání a manipulaci s podporované formáty souborů.
Prosím buď stáhněte si DLL API, nebo jej nainstalujte pomocí NuGet.
PM> Install-Package Aspose.Drawing
C# ořezávání obrázků
Oříznutí obrázků můžeme implementovat programově podle následujících kroků:
- Nejprve vytvořte instanci třídy Bitmap.
- Dále vytvořte objekt třídy Graphics pomocí metody FromImage().
- Poté definujte cestu klipu pomocí třídy GraphicsPath.
- Poté nastavte cestu klipu pomocí metody SetClip().
- Nakonec výstupní obrázek uložte pomocí metody Save().
Následující ukázka kódu ukazuje, jak implementovat ořezávání obrázků v C#.
// Vytvořte novou bitmapu
var bitmap = new Bitmap(1000, 800, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Inicializujte grafiku
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
// Definovat klip
Rectangle rectangle = new Rectangle(200, 200, 600, 400);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);
// Zadejte řetězec
StringFormat stringFormat = new StringFormat();
stringFormat.Alignment = StringAlignment.Center;
stringFormat.LineAlignment = StringAlignment.Center;
Brush brush = new SolidBrush(Color.Red);
Font arial = new Font("Arial", 20, FontStyle.Regular);
string text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " +
"Maecenas sapien tellus, mattis et condimentum eget, commodo ut ipsum. " +
"Maecenas elit sapien, tempus sit amet mauris sit amet, hendrerit laoreet nisi. " +
"Nulla facilisi. Sed commodo, mauris eget porta commodo, nunc tellus volutpat mi, " +
"eu auctor diam libero vel neque. Vestibulum nec mattis dui, nec molestie nisl. " +
"Etiam in magna felis. Praesent non nulla tortor. Integer nec convallis purus. " +
"Fusce vitae mollis mauris. Cras efficitur dui at mi viverra scelerisque. " +
"Morbi quis magna elit. Nulla facilisis id ante sit amet fringilla. " +
"Sed iaculis consectetur lectus a interdum. Etiam ut sollicitudin lectus, et congue lectus.";
// Nakreslete provázek
graphics.DrawString(text, arial, brush, rectangle, stringFormat);
// Uložit
bitmap.Uložit("C:\\Files\\Clipping.png");
Extrahujte objekt z obrázku v C#
Konkrétní část obrázku můžeme extrahovat pomocí oříznutí obrázku podle výše uvedených kroků. Potřebujeme však načíst existující obrázek a nakreslit jej pomocí metody DrawImage().
Následující ukázka kódu ukazuje, jak použít extrahování objektu z obrázku v C#.
// Vytvořte novou bitmapu
var bitmap = new Bitmap(225, 225, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
// Inicializujte grafiku
Graphics graphics = Graphics.FromImage(bitmap);
graphics.TextRenderingHint = TextRenderingHint.AntiAliasGridFit;
// Definovat klip
Rectangle rectangle = new Rectangle(0, 0, 225, 225);
GraphicsPath clipPath = new GraphicsPath();
clipPath.AddEllipse(rectangle);
graphics.SetClip(clipPath);
// Načtěte obrázek
Bitmap image = new Bitmap(@"C:\Files\aspose-logo.png");
// Nakreslete obrázek na určeném místě
graphics.DrawImage(image,0,0);
bitmap.Save("C:\\Files\\extract-object.png");
Získejte bezplatnou dočasnou licenci
Můžete získat bezplatnou dočasnou licenci a vyzkoušet Aspose.Drawing for .NET bez omezení hodnocení.
Aspose.Drawing – bezplatné učební zdroje
Kromě ořezávání obrázků v C# se můžete dozvědět více o různých funkcích knihovny pomocí zdrojů uvedených níže:
Závěr
V tomto článku jsme se naučili, jak implementovat ořezávání obrázků v C#. Podle podrobných pokynů a příkladů kódu můžete snadno a přesně extrahovat objekty z obrázků. V případě jakýchkoli nejasností nás neváhejte kontaktovat na našem bezplatném fóru podpory.