温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Bitmap图像翻转在C#中的实现

发布时间:2024-07-16 09:38:05 来源:亿速云 阅读:130 作者:小樊 栏目:编程语言

在C#中,可以通过使用System.Drawing命名空间中的Bitmap类来实现图像翻转。以下是一个简单的示例代码,演示如何实现水平翻转和垂直翻转:

using System;
using System.Drawing;

class Program
{
    static void Main()
    {
        Bitmap originalImage = new Bitmap("original.jpg");

        Bitmap flippedHorizontalImage = FlipImage(originalImage, true, false);
        flippedHorizontalImage.Save("flipped_horizontal.jpg");

        Bitmap flippedVerticalImage = FlipImage(originalImage, false, true);
        flippedVerticalImage.Save("flipped_vertical.jpg");
    }

    static Bitmap FlipImage(Bitmap originalImage, bool flipHorizontal, bool flipVertical)
    {
        Bitmap flippedImage = new Bitmap(originalImage.Width, originalImage.Height);

        for (int x = 0; x < originalImage.Width; x++)
        {
            for (int y = 0; y < originalImage.Height; y++)
            {
                int newX = flipHorizontal ? originalImage.Width - x - 1 : x;
                int newY = flipVertical ? originalImage.Height - y - 1 : y;

                flippedImage.SetPixel(newX, newY, originalImage.GetPixel(x, y));
            }
        }

        return flippedImage;
    }
}

在这个示例中,FlipImage方法接受一个原始的Bitmap对象和两个布尔值参数,分别表示是否进行水平翻转和垂直翻转。该方法通过遍历原始图片的每个像素,并根据是否需要翻转来调整像素的位置,最后生成一个新的Bitmap对象作为翻转后的图像。

在主函数中,我们加载了一个名为"original.jpg"的原始图像,并分别进行水平翻转和垂直翻转,最终保存为两个新的图像文件:“flipped_horizontal.jpg"和"flipped_vertical.jpg”。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI