|
제가 BMP이미지 출력을 해서 일정 영역을 처리하는 것을 구현할려고 하는데요..
아래와 같이 했습니다.
.
일단 Image1에 BMP가 출력시는 것은 되는데 Image1의 크기가 345*273픽셀입니다.
그런데 만약 이보다 큰 BMP를 열면 왼쪽 윗 부분만 345*273만큼만 보이는데...
여기서 Image1에 출력된 그림을 마우스를 사용해서 움직여서 원하는 부분으로 이동하고 싶은데요..
방법이 없을까요?
.
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
char string[100];
int i;
OpenPictureDialog1->Title="Open BMP File";
if(!OpenPictureDialog1->Execute())
{
Memo1->Lines->Append("Please select the BMP file again!!");
return;
}
Image1->Picture->
OpenedFileName->Text=OpenPictureDialog1->FileName;
Image1->Picture->LoadFromFile(OpenPictureDialog1->FileName);
Memo1->Lines->Append("BMP File Open success!!");
Memo2->Lines->Append("BMP File");
if(Image1->Picture->Bitmap->PixelFormat!=pf24bit)
{
Memo1->Lines->Append("Only 24bit Color BMP image support!!");
Memo1->Lines->Append("Please select the BMP file again!!");
okimage=false;
BitBtn2->Enabled=false;
BitBtn4->Enabled=false;
return;
}
sprintf(string,"BMP Image Size : Height=%d, Width=%d",Image1->Picture->Bitmap->Width,Image1->Picture->Bitmap->Height);
Memo2->Lines->Append(string);
selected=false;
okimage=true;
}
|