|
님이 쓰신 글 :
: 글들의 수준이 높군요...
:
: 가령 예를 들어 가로 세로 100인 비엠피가 있다고 하지요.
: 근대 그 중 유저가 선택한 영역(범위) 만을 파일로 떨어뜨리고 싶어요.
: 꼭 파일이 아녀도 그 단계에서 확인 시켜줄 수 있으면(스트림이던지)
: 어쨌든 현재 이미지 컴포넌트에 로드되어 있는 그림파일의 일부분을
: 약간 확대하던지 축소하는 등의 가공을 해서 다른 이미지 컴포넌트에
: 출력을 하고 싶은데...
: 잘 안되는 군여...
:
TBitmap->Canvas->CopyRect(.....)를 쓰시면 됩니다.
이에 대한 예제 코드를 잠깐 적겠습니다.
Graphics::TBitmap *CopyBmp(Graphics::TBitmap *source, int x1, int y1, int x2, int y2)
{
Graphics::TBitmap *bmp = new Graphics::TBitmap();
bmp->Width = x2 - x1 + 1;
bmp->Height = y2 - y1 + 1;
TRect rectsource(x1, y1, x2, y2), rectdest(0, 0, x2-x1, y2-y1);
bmp->Canvas->CopyRect(rectdest, source->Canvas, rectsource);
return bmp;
}
실제 테스트는 안해봐서 에러가 날 수도 있습니다.
그러나 위처럼 CopyRect() 메서드를 사용한다면 이미지가 복사될 것입니다.
그럼....^^
|