Ořezávání obrázků v C#

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:

  1. C# Image Clipping API – bezplatné stažení
  2. Jak implementovat C# Image Clipping
  3. Extrahovat objekt z obrázku v C#
  4. 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ů:

  1. Nejprve vytvořte instanci třídy Bitmap.
  2. Dále vytvořte objekt třídy Graphics pomocí metody FromImage().
  3. Poté definujte cestu klipu pomocí třídy GraphicsPath.
  4. Poté nastavte cestu klipu pomocí metody SetClip().
  5. 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");
C# ořezávání obrázků

C# ořezávání obrázků

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");
Extrahujte objekt z obrázku v C#

Extrahujte objekt z obrázku v C#

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.

Viz také