這次的作業是讀取一張 BMP 影像,將影像內容顯示於影像元件裡。
利用老師給的範例程式來完成這次的作業,因為老師都有上註解,所以讀起來也會比較容易了解。比較好奇的是程式最後要 unsigned char ucFileEnd[2]; 宣告 2 個變數,我想應該是在存成 bmp 檔時, 每一行最後會補上 2 bytes。也正如老師所講的是 4 的倍數的彩色影像,我覺得應該是這樣的解釋。
然後這程式是使用OpenPictureDialog1->Execute();的開檔方式,再讀圖片的每一個點並將其顯示出來,這是這一部分的程式碼
for(j=iImageHeight;j>0;j--)
for(i=0;i
{
fseek (imBMP,offset,SEEK_SET);
fread (bSize, 1, 3, imBMP);
offset+=3;
Image1->Canvas->Pixels[i][j]=(TColor)RGB(bSize[2],bSize[1],bSize[0]);
}
沒有留言:
張貼留言