|
초보운전 님이 쓰신 글 :
: 하안인 님이 쓰신 글 :
: : 답변이 될련지...
: :
: : 저는 캔버스로 출력할때 한페이지 분량이 넘어가면
: :
: : 다음 페이지로 이동하여 출력시켰습니다.
: : 즉 NewPage() 함수를 활용하시면 될겁니다.
:
: ==> 답변 감사 합니다. 어느 시점에서 사용해야 하나요.
: TRect r;
: Prn=Printer();
: r = Rect(200,200,Prn -> PageWidth - 200 ,Prn -> PageHeight-200);
: 이렇게 사용 하고 해도 안되네요.
: 아니면 한페이지 분량을 어떻게 계산 합니까.....????
저는 맵모드를 사용하면 캔버스의 좌표값이 페이지별로 y의 값이 계산됩니다.
int XPI = GetDeviceCaps(c->Handle,LOGPIXELSX);
int YPI = GetDeviceCaps(c->Handle,LOGPIXELSY);
SetMapMode(dc,MM_ANISOTROPIC);
SetWindowExtEx(dc,1000,1000,NULL);
SetViewportExtEx(dc,XPI,YPI,NULL);
그래서 y의 값이 한페이지 이상이면 새로운 페이지를 만든후
다시 맵 캔버스에 그립니다.
|