|
分類:[C#]
たとえば画像Aを縦10横5に並べた画像Bを作り、メモリ上に保持していつでも画面上に描画できるようにしたいのですが その画像Bを作成する方法を教えてほしいのです。
開発ツールはVisualStudio2010、言語はC#で行っております。
とりあえず、画像Bをbitmapで作成し、画像Aを読み込んでそれをDrawImageで画像Bに書き込むという機能を作成しましたが、 縦横の数が増えるほど処理に時間がかかります。 最終的には100x100くらいの規模のものを処理するつもりなので、もっと早く処理できる別の方法や改善方法を教えていただきたいです。
やってることとしては以下のような感じです。
Image A = Image.FromFile("画像A.bmp"); Bitmap B = new Bitmap(A.Width * 10, A.Height * 5); Graphics gB = Graphics.FromImage(B);
for (int x = 0; x < 10; x++) for (int y = 0; y < 5; y++) gB.DrawImage(A, A.Width*x, A.Height*y, A.Width, A.Height);
|