我正在考虑制作一个窗口,其上有一个50x50的空间(位图?),并让用户在广场内绘制(如MS Paint)。当用户完成后,可以通过单击“保存”按钮保存图片,它将在Game1中更新(用于我的游戏的碰撞目的)。我在这里看过一些关于如何像MS Paint一样在屏幕上绘制的教程,但我似乎无法弄清楚如何将该图片保存为Texture2D / Rectangle。如何在Windows窗体上获取位图?
答案 0 :(得分:0)
将位图保存为png:
private void SaveBmpAsPNG(Bitmap bm)
{
bm.Save(@"c:\button.png", ImageFormat.Png);
}
将texture2d写入文件:
using (Stream stream = File.OpenWrite("picture.png"))
{
texture.SaveAsPng(stream, texture.Width, texture.Height);
}
将.png读入texture2d:
using(Stream stream = File.OpenRead("picture.png"))
{
texture = Texture2D.FromStream(GraphicsDevice, stream);
}