gpt4 book ai didi

c# - 直接在图像上绘制

转载 作者:太空宇宙 更新时间:2023-11-03 16:31:12 24 4
gpt4 key购买 nike

我是从 WPF 开始的,我对 Winforms 非常了解。

我想做的是获取一堆图像 block 并将它们拼接在一起以创建一个更大的图像,我将在图像控件中显示该图像。

在 Winforms 中我会这样做

Bitmap map = new Bitmap(800,800);
using (Graphics g=Graphics.FromImage(map))
{

for (int x = 0; x<8; x++)
for (int y = 0; y<8; y++)
{
g.DrawImage(bmp[x,y],x*100,y*100);
}
}

pictureBox1.Image=map;

我没有测试这是否可以编译,但我希望你能理解我的要求。

我只是在寻找对如何执行此操作的基本了解,以便我可以使用它并弄清楚。

最佳答案

引用 System.Drawing 命名空间

完全按照问题中的描述在位图上绘制。

Bitmap map = new Bitmap(800,800);
using (Graphics g=Graphics.FromImage(map))
{

for (int x = 0; x<8; x++)
for (int y = 0; y<8; y++)
{
g.DrawImage(bmp[x,y],x*100,y*100);
}
}
Image.Source=ConvertBitmap(map);

然后用这个把Bitmap转换成BitmapSource

public static BitmapSource ConvertBitmap(System.Drawing.Bitmap source)
{
return System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
source.GetHbitmap(),
IntPtr.Zero,
Int32Rect.Empty,
System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());
}

关于c# - 直接在图像上绘制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10743645/

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