컨트롤 배율 조정 공식...
# 1) 프로그래밍2011. 6. 9. 09:52
ZoomInOut을 구현했는데...
int[] factors = { 50, 100, 200 };
을 combo에 넣고
옛날 값 = 100; 으로 초기값 사용.
현재 선택된 Factor = 50;
{
float 조정배율 = 현재값/ 옛날값 ;
Control.Scale( new SizeF( 조정배율 , 조정배율 ));
옛날값 = 현재값;
}
추가로 폰트
=> 폰트 사이즈 * 조정배율;
이러면 간단히 된다. ㅡ.,ㅡ;; 아래는 삽질 ? ㅋㅋ
--- 기존 ----------------------------------------------------------------------------------------
컨트롤을 만들다가 적용해보았음.
공식 검토하고 적용해보고 테스트 하는데 30분이나 까먹었음...
아~~ 산수 역시나..
// 원래 size / 현재size * 배율
이건 Control.Scale(); 에 들어가는 배율을 구하는 공식임.
곧 처음 사이즈가 100 이었을때
50%로 줄이면 100 / 100 * ( 50 / 100 ) = 0.5 절반
으로 Scale에 들어가는 값으로 구해진다.
다시 50에서 100%으로 늘리면 100 / 50 * ( 100 / 100 ) = 2
다시 200%로 올리면 100 / 100 * ( 200/ 100 ) = 2 로써 2배로 늘어나고
이걸 50% 로 줄이면
100 / 200 * ( 50 / 100 ) = 0.25 배가 된다. 고로 현재 사이즈에서 0.25배...
현재 사이즈 * 0.25 를 하게 되면 50 이란 실제 사이즈가 나오게 된다...
int[] factors = { 50, 100, 200 };
을 combo에 넣고
옛날 값 = 100; 으로 초기값 사용.
현재 선택된 Factor = 50;
{
float 조정배율 = 현재값/ 옛날값 ;
Control.Scale( new SizeF( 조정배율 , 조정배율 ));
옛날값 = 현재값;
}
추가로 폰트
=> 폰트 사이즈 * 조정배율;
이러면 간단히 된다. ㅡ.,ㅡ;; 아래는 삽질 ? ㅋㅋ
--- 기존 ----------------------------------------------------------------------------------------
컨트롤을 만들다가 적용해보았음.
공식 검토하고 적용해보고 테스트 하는데 30분이나 까먹었음...
아~~ 산수 역시나..
// 원래 size / 현재size * 배율
이건 Control.Scale(); 에 들어가는 배율을 구하는 공식임.
곧 처음 사이즈가 100 이었을때
50%로 줄이면 100 / 100 * ( 50 / 100 ) = 0.5 절반
으로 Scale에 들어가는 값으로 구해진다.
다시 50에서 100%으로 늘리면 100 / 50 * ( 100 / 100 ) = 2
다시 200%로 올리면 100 / 100 * ( 200/ 100 ) = 2 로써 2배로 늘어나고
이걸 50% 로 줄이면
100 / 200 * ( 50 / 100 ) = 0.25 배가 된다. 고로 현재 사이즈에서 0.25배...
현재 사이즈 * 0.25 를 하게 되면 50 이란 실제 사이즈가 나오게 된다...
'# 1) 프로그래밍' 카테고리의 다른 글
로그 시스템... (0) | 2011.06.09 |
---|---|
알람!! 메세지 팝업 처리.. (0) | 2011.06.09 |
큐 자원 재활용!! (0) | 2011.06.07 |
[사용자 지정 포멧 & 숫자 포멧] C# 문자열 포멧 지정... (0) | 2011.05.26 |
C#] 날짜 2011-04-19 오후 2:45:00 를 DateTime으로 바꾸기 (0) | 2011.04.28 |