在C#Winforms中将多个图像渲染为位图

在C#Winforms中将多个图像渲染为位图,winforms,xna,bitmap,render,textures,Winforms,Xna,Bitmap,Render,Textures,我正在开发一套用于在XNA中创建游戏的应用程序。使用Graphics.drawImage,我可以轻松地从XNA texture2D对象绘制预览图像 每个对象(如角色、贴图等)都由一系列部分组成,每个部分存储位置旋转和纹理源等信息。下一步是渲染整个对象的预览,而不仅仅是一部分 我该怎么办?我是否可以将Graphics.drawImage视为常规的XNA draw调用,并通过循环列表并按位置和顺序将每个项目绘制到位图来渲染要绘制位图的对象部分?还是每个graphics.DrawImage调用都会破坏

我正在开发一套用于在XNA中创建游戏的应用程序。使用Graphics.drawImage,我可以轻松地从XNA texture2D对象绘制预览图像

每个对象(如角色、贴图等)都由一系列部分组成,每个部分存储位置旋转和纹理源等信息。下一步是渲染整个对象的预览,而不仅仅是一部分


我该怎么办?我是否可以将Graphics.drawImage视为常规的XNA draw调用,并通过循环列表并按位置和顺序将每个项目绘制到位图来渲染要绘制位图的对象部分?还是每个graphics.DrawImage调用都会破坏它所绘制的位图?

这就是您要查找的吗

   Bitmap bmp = new Bitmap(100, 100);
   Graphics g = Graphics.FromImage(bmp);
   g.DrawImage(Properties.Resources.Foo);
   Bitmap bar = Properties.Resources.Bar;
   bar.MakeTransparent(bar.GetPixel(0, 0));
   g.DrawImage(bar);

只要图像是透明的(您可以在运行时调用Bitmap.MakeTransparent()),就可以通过多次调用DrawImage来分层,而不会“破坏”位图。

听起来不错。我有一组Texture2D xna对象,每个对象都存储其到文件的路径。使用Image.FromFile()我使用此路径创建图像对象,然后我需要使用Graphics.DrawImage()和描述该部分的矩形将图像的部分绘制到图形对象。从这里,我可以按从后到前的顺序进行多个g.DrawImage()调用


由于Texture2D和Image可以处理透明度问题,而且我的tex源都是PNG格式的,所以我假设我可以使用Image类而不是Bitmap类,并且不必进行MakeTransparent调用,对吗?

你说的Graphics.DrawImage是什么?