
При работе с изображениями вам часто может понадобиться повернуть их под разными углами. Кроме того, в различных случаях также используются горизонтальные и вертикальные флипы. Оба считаются ключевыми функциями каждого графического редактора. В этой статье вы узнаете, как программно поворачивать и отражать изображения на C#.
С# .NET API для поворота и отражения изображений
Чтобы вращать и переворачивать изображения из приложений .NET, мы будем использовать Aspose.Imaging for .NET. Это API обработки изображений, который предоставляет широкий спектр функций для работы с различными типами изображений. Кроме того, он скрывает сложные операции и упрощает обработку изображений. Вы можете загрузить API или установить его в свои приложения .NET с помощью NuGet.
PM> Install-Package Aspose.Imaging
Поворот и отражение изображения в C#
Чтобы повернуть изображение, вам нужно указать угол поворота. Чаще всего используются углы 90, 180 и 270 градусов. Кроме того, изображения переворачиваются по горизонтали или вертикали. Aspose.Imaging для .NET одновременно выполняет вращение и переворачивание. Для этого API предоставляет перечисление RotateFlipType для указания угла поворота и типа отражения. Вы можете выполнять следующие операции отражения/поворота изображения:
- Только поворот
- Только перевернуть
- И вращать, и переворачивать
Давайте посмотрим, как выполнить каждую из вышеупомянутых операций на следующем изображении.

Поворот изображения в C#
Во-первых, давайте посмотрим, как повернуть изображение. Следующие параметры используются для поворота изображения без отражения.
- Rotate180FlipNone: поворот на 180 градусов без отражения
- Rotate270FlipNone: вращение на 270 градусов без отражения
- Rotate90FlipNone: поворот на 90 градусов без отражения
Ниже приведены шаги для выполнения поворота изображения в C#.
- Сначала загрузите файл изображения с помощью класса Image.
- Затем поверните изображение на 270 градусов, используя метод Image.RotateFlip(RotateFlipType.Rotate270FlipNone).
- Наконец, сохраните обновленное изображение с помощью метода Image.Save(string).
В следующем фрагменте кода показано, как повернуть изображение на определенный угол.
// Загрузите изображение в экземпляр Image
using (Image image = Image.Load("image.bmp"))
{
// Повернуть изображение
image.RotateFlip(RotateFlipType.Rotate270FlipNone);
// Сохранить изображение
image.Save("image-rotated.bmp");
}
Ниже показано повернутое изображение, которое мы получаем после выполнения этого кода.

Повернуть изображение
Перевернуть изображение в C#
Теперь посмотрим, как перевернуть изображение без поворота. Для этого используются следующие элементы RotateFlipType.
- RotateNoneFlipX: нет вращения с горизонтальным отражением
- RotateNoneFlipY: без вращения с вертикальным отражением
- RotateNoneFlipXY: без вращения с горизонтальным и вертикальным отражением
Ниже приведены шаги, чтобы перевернуть изображение в C#.
- Сначала загрузите файл изображения с помощью класса Image.
- Затем переверните изображение по горизонтали, используя метод Image.RotateFlip(RotateFlipType.RotateNoneFlipX).
- Наконец, сохраните обновленное изображение с помощью метода Image.Save(string).
В следующем примере кода показано, как перевернуть изображение в приложениях .NET.
// Загрузите изображение в экземпляр Image
using (Image image = Image.Load("image.bmp"))
{
// Перевернуть изображение
image.RotateFlip(RotateFlipType.RotateNoneFlipX);
// Сохранить изображение
image.Save("image-flipped.bmp");
}
На следующем снимке экрана показано, как изображение переворачивается с помощью приведенного выше фрагмента кода.

Перевернуть изображение
Поворот и отражение изображения в C#
В этом разделе мы увидим, как поворачивать и отражать изображение одновременно. Для этого используются следующие члены перечисления RotateFlipType.
- Rotate180FlipX: поворот на 180 градусов с горизонтальным отражением
- Rotate180FlipXY: поворот на 180 градусов с горизонтальным и вертикальным отражением
- Rotate180FlipY: поворот на 180 градусов с вертикальным отражением
- Rotate270FlipX: поворот на 270 градусов с горизонтальным отражением
- Rotate270FlipXY: вращение на 270 градусов с горизонтальным и вертикальным отражением
- Rotate270FlipY: вращение на 270 градусов с вертикальным отражением
- Rotate90FlipX: поворот на 90 градусов с горизонтальным отражением
- Rotate90FlipXY: поворот на 90 градусов с горизонтальным и вертикальным отражением
- Rotate90FlipY: поворот на 90 градусов с вертикальным отражением
Ниже приведены шаги для поворота и отражения изображения в C#.
- Сначала загрузите файл изображения с помощью класса Image.
- Затем поверните изображение на 180 градусов и отразите его по горизонтали, используя метод Image.RotateFlip(RotateFlipType.Rotate180FlipX).
- Наконец, сохраните обновленное изображение с помощью метода Image.Save(string).
В следующем фрагменте кода C# показано, как выполнять одновременное вращение и отражение.
// Загрузите изображение в экземпляр Image
using (Image image = Image.Load("image.bmp"))
{
// Повернуть и отразить изображение
image.RotateFlip(RotateFlipType.Rotate180FlipX);
// Сохранить изображение
image.Save("image-rotated-flipped.bmp");
}
На следующем снимке экрана показано, как выглядит изображение после применения поворота и отражения.

Повернуть и отразить изображение
Получите бесплатную лицензию API
Вы можете получить бесплатную временную лицензию для использования Aspose.Imaging for .NET без ограничений пробной версии.
Вывод
В этой статье вы узнали, как программно поворачивать и отражать изображения на C#. Кроме того, в пошаговом руководстве и примерах кода показано, как поворачивать изображение, отражать изображение, а также поворачивать и отражать изображение одновременно. Кроме того, вы можете узнать больше об API обработки изображений .NET, используя документацию. Кроме того, вы можете загрузить образцы исходного кода API с GitHub. В случае возникновения вопросов вы можете связаться с нами на нашем форуме.