gpt4 book ai didi

c# - 如何扩展 Bitmap 类

转载 作者:行者123 更新时间:2023-11-30 13:12:45 27 4
gpt4 key购买 nike

我正在尝试扩展 Bitmap 类,以便我可以将自己的效果应用于图像。当我使用这段代码时:

namespace ImageEditor
{
public class Effects : System.Drawing.Bitmap

{
public void toBlackAndWhite()
{
System.Drawing.Bitmap image = (Bitmap)this;
AForge.Imaging.Filters.Grayscale filter = new AForge.Imaging.Filters.Grayscale();
this = filter.Apply(this);
}
}
}

我收到以下错误:

'ImageEditor.Effects': cannot derive from sealed type 'System.Drawing.Bitmap'

那么有没有办法解决这个问题,或者根本不可能扩展这个类?

谢谢。

最佳答案

您不能从 Bitmap 派生,因为它是密封的。

如果要给Bitmap类增加方法,写一个扩展方法:

// Class containing our Bitmap extension methods.
public static class BitmapExtension
{
public static void ToBlackAndWhite(this Bitmap bitmap)
{
...
}
}

然后像这样使用它:

Bitmap bitmap = ...;
bitmap.ToBlackAndWhite();

关于c# - 如何扩展 Bitmap 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/766923/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com