이미지 프로세싱 프로그램을 만들고 있습니다.
읽어들이는 파일이 너무 큰 경우(2000*2000이 넘는 것이 대부분)에 확대를 하다 보면,
리소스가 부족하다는 메세지가 나오더군요.
그도 그럴 것이 풀로 읽어 들여서 풀로 확대를 해서 넣으니...
그래서 스크롤 바를 이용하기로 결정을 했습니다.
원하는 부분만 잘라서 확대를 하고 스크롤 바를 이동시키면 계속 해당하는 부분을
화면에 뿌리도록...
문제는 ScrollBar에 보면 Max 설정에서...
처음에 읽어 들일때 설정은
HorzScroll.Max := orgWidth - Image.Width;
VertScroll.Max:= orgHeight - Image.Height;
이렇게 했지요.
물론 잘 되더군요(이미지 크기만큼 스크롤 해서 보여지더군요).
근데 확대를 하면 Max값이 바뀌어야 하는 데, 아래처럼 하니까 제대로 안되는군요.
HorzScroll.Max := (orgWidth - Image.Width)*ZoomRatio; //ZoomRatio는 2의 배수
여러 방법을 써 봤는데, 이놈을 어떻게 바꿔야 하는지...
32배까지 확대를 해야 하거든요.
제대로 컨트롤 할 수 있는 방법을 아시는 분 계시면 도와주세요.
오늘 하루는 이놈과 씨름하느라 다 보내는 군요.
그럼.