|
궁금한 것은 TWIP이 왜 필요하신지요?
"A twip is 1/20 of a point or 1/1440 of an inch. These units come from the typesetters trade as far as I know, they predate the computer age by quite some time."
위에 보시면 TWIP의 정의가 나옵니다.
아래에는 픽셀값을 얻기 위한 델파이 예제가 있습니다.
참고하셔서 수정해서 사용하시면 됩니다.
Image1.Left := ROUND (Pos.X / 8);
Image1.Top := ROUND (Pos.Y / 8);
또는
#define MmToPix(mm) mm * PixelsPerInch / 25.4
int intTwip,Pix;
//1mm = 56.7Twip, intTwip/56.7일때 Twip에서 mm로 변환
Pix = MmToPix(intTwip/56.7);
출처는 프랑스, 일본 사이트임.
내용은 모르고 코드만 봤기에 확실한 것인지는 장담 못 합니다.
헉~ 돌이~ 덜덜덜
건승을 빕니다.
장성호 님이 쓰신 글 :
: Form이나 TImage등
:
: C++Builder TWinControl 에서
:
: 픽셀모드가 아닌 TWIP모드의 마우스좌표를 알고싶습니다.
:
: //================================================
:
: Graphic그리는 프로그램 하고있습니다.
: X,Y좌표가 수백~ 수천,수만까지 나오는데..
: TImage에 축소해 display합니다.
:
: 그런데 마우스 커서를 가져갔을때 픽셀좌표가 아닌 정확한 Graphic의 X,Y좌표를 알고싶습니다.
:
: Visual Basic에서는 Default로 Form의 ScaleMode가 TWIP모드로 설정되어있고
: Form위에서 마우스를 움직일경우 픽셀좌표가 아닌 TWIP모드의 좌표를 MouseMove Event에서 확인할 수 있습니다.
:
: API SetMapMode()함수로 TImage의 MapMode를 바꿀수는 있었는데
: TImage위에서 Mouse가 Move할때 픽셀좌표외에 다른것을얻을수는 없었습니다.
:
: 어떻게 하면 되죠?
|