2012-11-11 97 views
1

我为自己制作的游戏制作了一个简单的GUI库,每个控件需要在控件需要重绘时需要绘制位图。当它不需要重画时,它将有一个已经制作好的位图准备好显示到屏幕上。由于控件可以调整大小,因此此位图也需要调整大小,以便可以将控件完全吸入。我怎么能实现这一点,因为它不像一个ID2D1HwndRenderTarget,它可以调整大小,它似乎不是一个Resize方法调整位图的大小?C++ Direct 2D如何调整大小ID2D1Bitmap

+0

DirectX库中没有简单的函数用于调整ID2D1Bitmap的大小。作为进一步的澄清。您可以通过保存原始图像数据并对其应用不同的采样算法来调整其大小。但是没有内置函数可以为你做到这一点。 –

+0

你想达到什么效果? – zdd

+0

我为自己制作的游戏制作了一个简单的GUI库,每个控件在控件需要重绘时都需要绘制一个位图,当它不需要重画时,它会有一个已经制作好的位图准备显示到屏幕上,因为控件可以调整大小,所以这个Bitmap也需要调整大小,以便控件可以被完全地绘制到屏幕上 –

回答

0

无法调整ID2D1Bitmap的大小。一旦位图创建就设置尺寸。同样适用于IDXGISurfaceID3D11Texture2D。 您将需要创建一个不同大小的新位图并自行复制数据。