.net 在windows窗体中在图像上绘制覆盖图的最快方法

.net 在windows窗体中在图像上绘制覆盖图的最快方法,.net,forms,image-processing,gdi+,direct3d,.net,Forms,Image Processing,Gdi+,Direct3d,在.net中绘制图像的最快方法是什么 我试图在windows窗体控件中的另一个图像上绘制一个图像。我知道,当我试图直接使用循环绘制它时,需要一个Eon 我听说过的选项有GDI+、直接绘图或DX10。我从一个固定大小的位图开始,在应用了3个以上的覆盖、图层之后,再将其指定给窗体对象 谢谢,如果您的覆盖是图像(可能是具有透明度的PNG图像),那么一般技术是从要绘制的图像创建图形对象,然后将其他图像渲染到该对象上: Bitmap b1 = (Bitmap) Bitmap.FromFile("b

在.net中绘制图像的最快方法是什么

我试图在windows窗体控件中的另一个图像上绘制一个图像。我知道,当我试图直接使用循环绘制它时,需要一个Eon

我听说过的选项有GDI+、直接绘图或DX10。我从一个固定大小的位图开始,在应用了3个以上的覆盖、图层之后,再将其指定给窗体对象


谢谢,

如果您的覆盖是图像(可能是具有透明度的PNG图像),那么一般技术是从要绘制的图像创建图形对象,然后将其他图像渲染到该对象上:

    Bitmap b1 = (Bitmap) Bitmap.FromFile("bitmap1.bmp");
    Bitmap b2 = (Bitmap)Bitmap.FromFile("bitmap2.bmp");
    Bitmap b3 = (Bitmap)Bitmap.FromFile("bitmap3.bmp");
    using (Graphics g = Graphics.FromImage(b1))
    {
        g.DrawImage(b2, new Point(0, 0));
        g.DrawImage(b3, new Point(50, 50));
    }

如果覆盖图是由对象(文本、线条、形状等)绘制的,则可以创建或获取适当的笔刷和笔,并使用图形对象将所需内容渲染到图像上。当你用完一次性物品时,一定要把它们处理掉。使用using语句可以最方便地完成此操作。

如果覆盖是图像(可能是具有透明度的PNG图像),则一般技术是从要绘制的图像创建图形对象,然后将其他图像渲染到该对象上:

    Bitmap b1 = (Bitmap) Bitmap.FromFile("bitmap1.bmp");
    Bitmap b2 = (Bitmap)Bitmap.FromFile("bitmap2.bmp");
    Bitmap b3 = (Bitmap)Bitmap.FromFile("bitmap3.bmp");
    using (Graphics g = Graphics.FromImage(b1))
    {
        g.DrawImage(b2, new Point(0, 0));
        g.DrawImage(b3, new Point(50, 50));
    }
如果覆盖图是由对象(文本、线条、形状等)绘制的,则可以创建或获取适当的笔刷和笔,并使用图形对象将所需内容渲染到图像上。当你用完一次性物品时,一定要把它们处理掉。这可以通过using语句轻松完成