Edycja obrazu jest obecnie dość powszechna iw różnych przypadkach musimy manipulować obrazami, aby uzyskać pożądane rezultaty. Jako programista możesz zaimplementować funkcje edycji obrazu z poziomu tworzonych aplikacji. Niedawno omówiliśmy, jak programowo zmienić rozmiar, obrócić i przerzucić obrazy. Dzisiaj pokażemy, jak przycinać obrazy przy użyciu języka C# w aplikacjach .NET. Omówimy, jak wykonać kadrowanie obrazu za pomocą wartości przesunięcia lub prostokąta.
- Interfejs API języka C# do przycinania obrazów — bezpłatne pobieranie
- Przytnij obrazy w C#
- Przytnij obrazy z wartościami Shift
- Przycinanie obrazu za pomocą prostokąta
Interfejs API języka C# do przycinania obrazów — bezpłatne pobieranie
Do kadrowania obrazu w C# użyjemy Aspose.Imaging for .NET. Jest to bogaty w funkcje interfejs API do bezproblemowego manipulowania obrazami w popularnych formatach. Możesz pobrać interfejs API lub zainstalować go w swoich aplikacjach .NET za pomocą NuGet.
PM> Install-Package Aspose.Imaging
Przytnij obrazy w C#
Aspose.Imaging for .NET zapewnia dwa sposoby przycinania obrazu. W pierwszej metodzie musimy podać wartości przesunięcia w lewo, w prawo, górę i dół. Natomiast w drugiej metodzie definiujemy prostokąt, aby przyciąć określony obszar obrazu.
W poniższych sekcjach pokażemy, jak używać obu wyżej wymienionych metod do przycinania obrazów w języku C#.
Przytnij obrazy z wartościami Shift w C#
Poniżej przedstawiono kroki kadrowania obrazu przy użyciu wartości przesunięcia w języku C#.
- Najpierw załaduj obraz do obiektu RasterImage za pomocą metody Image.Load().
- Zachowaj obraz w pamięci podręcznej, aby uzyskać lepszą wydajność.
- Zdefiniuj wartości przesunięcia w lewo, w prawo, górę i dół.
- Przekaż wartości przesunięcia do metody RasterImage.Crop(), aby przyciąć obraz.
- Zapisz wykadrowany obraz metodą RasterImage.Save().
Poniższy przykład kodu pokazuje, jak przyciąć obraz w języku C#.
// Załaduj obraz do przycięcia.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
// Przed kadrowaniem obraz należy zapisać w pamięci podręcznej, aby uzyskać lepszą wydajność.
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Zdefiniuj wartości przesunięcia dla wszystkich czterech stron.
int leftShift = 10;
int rightShift = 10;
int topShift = 50;
int bottomShift = 50;
// Na podstawie wartości przesunięcia zastosuj kadrowanie obrazu. Metoda kadrowania przesunie granice obrazu w kierunku środka obrazu.
rasterImage.Crop(leftShift, rightShift, topShift, bottomShift);
// Zapisz przycięty obraz.
rasterImage.Save("cropped.png");
}
Poniżej znajduje się obraz wejściowy, którego użyliśmy do przycięcia.
Poniżej znajduje się wynikowy przycięty obraz.
Kadrowanie obrazu C# przy użyciu prostokąta
Możesz także zdefiniować prostokąt, aby przyciąć żądany obszar obrazu. Poniższe kroki przedstawiają kadrowanie obrazu za pomocą prostokąta w języku C#.
- Najpierw załaduj obraz do obiektu RasterImage za pomocą metody Image.Load().
- Następnie utwórz obraz w pamięci podręcznej.
- Utwórz obiekt Rectangle i zainicjuj go żądanym rozmiarem.
- Przekaż obiekt Rectangle do metody RasterImage.Crop(), aby przyciąć obraz.
- Zapisz wykadrowany obraz metodą RasterImage.Save().
Poniższy przykładowy kod pokazuje, jak wykonać przycinanie obrazu za pomocą prostokąta w języku C#.
// Załaduj obraz.
using (RasterImage rasterImage = (RasterImage)Image.Load("image.png"))
{
// Przed kadrowaniem obraz należy zapisać w pamięci podręcznej, aby uzyskać lepszą wydajność.
if (!rasterImage.IsCached)
{
rasterImage.CacheData();
}
// Utwórz instancję klasy Rectangle o żądanym rozmiarze i przytnij obraz.
Rectangle rectangle = new Rectangle(20, 20, 20, 20);
rasterImage.Crop(rectangle);
// Zapisz przycięty obraz.
rasterImage.Save("cropped.png");
}
Imaging Cropping API dla języka C# — Uzyskaj bezpłatną licencję
Możesz uzyskać bezpłatną tymczasową licencję i przycinać obrazy bez ograniczeń ewaluacyjnych.
Zbuduj swoją aplikację do przycinania obrazu
W tym artykule nauczyłeś się przycinać obrazy w języku C#. Pokazaliśmy kilka sposobów przycinania obrazu przy użyciu wartości przesunięcia lub prostokąta. Teraz możesz łatwo zbudować własną aplikację do przycinania obrazów lub rozszerzyć możliwości edycji obrazów w istniejącej aplikacji. Aby dowiedzieć się więcej o interfejsie API do edycji obrazów w języku C#, odwiedź dokumentację. Możesz także podzielić się z nami swoimi pytaniami za pośrednictwem naszego forum.