TPrinter 객체를 이용하여 현재 설정된 프린터의 용지 정보를 얻을 수 있고 설정할 수 있습니다..
PDevMode 객체를 이용합니다.
용지 얻기
용지 설정하기
PDevMode 객체를 이용합니다.
용지 얻기
function GetPaperSize: integer; var ADevMode: PDevMode; hDMode: THandle; Device, Driver, Port: array[0..255] of Char; begin Printer.GetPrinter(Device, Driver, Port, hDMode); ADevMode := GlobalLock(hDMode); GlobalUnlock(hDMode); result := ADevMode.dmPaperSize; end;
용지 설정하기
procedure SetPaperSize(pSize: Integer); var ADevMode: PDevMode; hDMode: THandle; Device, Driver, Port: array[0..255] of Char; begin Printer.GetPrinter(Device, Driver, Port, hDMode); ADevMode := GlobalLock(hDMode); //80Column = 258; 136Column = 259; ADevMode.dmPaperSize := pSize; GlobalUnlock(hDMode); Printer.SetPrinter(Device, Driver, Port, hDMode); end;여기서 pSize(용지 사이즈 정보는 Windows.pas에 선언되어 있습니다
in Windows.pas ... {$EXTERNALSYM DMPAPER_A3} DMPAPER_A3 = 8; { A3 297 x 420 mm } {$EXTERNALSYM DMPAPER_A4} DMPAPER_A4 = 9; { A4 210 x 297 mm } {$EXTERNALSYM DMPAPER_A4SMALL} DMPAPER_A4SMALL = 10; { A4 Small 210 x 297 mm } {$EXTERNALSYM DMPAPER_A5} DMPAPER_A5 = 11; { A5 148 x 210 mm } {$EXTERNALSYM DMPAPER_B4} DMPAPER_B4 = 12; { B4 (JIS) 250 x 354 } {$EXTERNALSYM DMPAPER_B5} DMPAPER_B5 = 13; { B5 (JIS) 182 x 257 mm } {$EXTERNALSYM DMPAPER_FOLIO} ... //다른 용지도 찾아보세요...
'프로그래밍 > Delphi' 카테고리의 다른 글
파일사이즈 알아내기 - in Delphi (0) | 2011.03.02 |
---|---|
SMTP를 이용하여 메일 발송시 아이폰에서 한글 깨지는 문제 처리 (0) | 2011.02.10 |
virtual 과 dynamic 그리고 override 의 내부 메카니즘 소개 (2) | 2010.08.04 |
DLL을 이용한 마우스 전역 후킹(Hooking) (1) | 2010.07.16 |
실행파일명으로 프로세스(TASK) 죽이기 (1) | 2010.05.27 |