Menggunakan Bitmap Singgahan untuk Meningkatkan Performa

Objek gambar dan Bitmap menyimpan gambar dalam format independen perangkat. Objek CachedBitmap menyimpan gambar dalam format perangkat tampilan saat ini. Merender gambar yang disimpan dalam objek CachedBitmap cepat karena tidak ada waktu pemrosesan yang dihabiskan untuk mengonversi gambar ke format yang diperlukan oleh perangkat tampilan.

Contoh berikut membuat objek Bitmap dan objek CachedBitmap dari file Texture.jpg. Bitmap dan CachedBitmap masing-masing ditarik 30.000 kali. Jika Anda menjalankan kode, Anda akan melihat bahwa gambar CachedBitmap digambar secara substansial lebih cepat daripada gambar Bitmap .

Bitmap        bitmap(L"Texture.jpg");
UINT          width = bitmap.GetWidth();
UINT          height = bitmap.GetHeight();
CachedBitmap  cBitmap(&bitmap, &graphics);
int           j, k;
for(j = 0; j < 300; j += 10)
   for(k = 0; k < 1000; ++k)
     graphics.DrawImage(&bitmap, j, j / 2, width, height);
for(j = 0; j < 300; j += 10)
   for(k = 0; k < 1000; ++k)
      graphics.DrawCachedBitmap(&cBitmap, j, 150 + j / 2 );

Catatan

Objek CachedBitmap cocok dengan format perangkat tampilan pada saat objek CachedBitmap dibangun. Jika pengguna program Anda mengubah pengaturan tampilan, kode Anda harus membuat objek CachedBitmap baru. Metode DrawImage akan gagal jika Anda meneruskannya objek CachedBitmap yang dibuat sebelum perubahan dalam format tampilan.