我有 3 个位图点。
Bitmap* totalCanvas = new Bitmap(400, 300, PixelFormat32bppARGB); // final canvas
Bitmap* bottomLayer = new Bitmap(400, 300,PixelFormat32bppARGB); // background
Bitmap* topLayer = new Bitmap(XXX); // always changed.
我将在底部图层上绘制复杂的背景。我不想一次又一次地在totalCanvas上重绘复杂的背景,所以我把它存储在bottomLayer中。
TopLayer 经常更改。我想将bottomLayer 绘制到totalCanvas。哪种方式最快?
Graphics canvas(totalCanvas);
canvas.DrawImage(bottomLayer, 0, 0); step1
canvas.DrawImage(topLayer ,XXXXX); step2
我希望 step1 尽可能快。谁能给我一些样品?非常感谢!
感谢您放松的回答。我写了以下代码:
Graphics canvas(totalCanvas);
for (int i = 0; i < 100; ++i)
{
canvas.DrawImage(bottomLayer, 0,0);
}
这部分需要 968 毫秒……太慢了……