2012-11-11 50 views
1

我爲自己製作的遊戲製作了一個簡單的GUI庫,每個控件需要在控件需要重繪時需要繪製位圖。當它不需要重畫時,它將有一個已經制作好的位圖準備好顯示到屏幕上。由於控件可以調整大小,因此此位圖也需要調整大小,以便可以將控件完全吸入。我怎麼能實現這一點,因爲它不像一個ID2D1HwndRenderTarget,它可以調整大小,它似乎不是一個Resize方法調整位圖的大小?C++ Direct 2D如何調整大小ID2D1Bitmap

+0

DirectX庫中沒有簡單的函數用於調整ID2D1Bitmap的大小。作爲進一步的澄清。您可以通過保存原始圖像數據並對其應用不同的採樣算法來調整其大小。但是沒有內置函數可以爲你做到這一點。 –

+0

你想達到什麼效果? – zdd

+0

我爲自己製作的遊戲製作了一個簡單的GUI庫,每個控件在控件需要重繪時都需要繪製一個位圖,當它不需要重畫時,它會有一個已經制作好的位圖準備顯示到屏幕上,因爲控件可以調整大小,所以這個Bitmap也需要調整大小,以便控件可以被完全地繪製到屏幕上 –

回答

0

無法調整ID2D1Bitmap的大小。一旦位圖創建就設置尺寸。同樣適用於IDXGISurfaceID3D11Texture2D。 您將需要創建一個不同大小的新位圖並自行復制數據。