Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[9014] Re:[질문]인쇄시 프린터 기종에 따라 폰트 크기를 제어할 수가 없네요
박지훈.임프 [cbuilder] 1112 읽음    2003-11-05 04:56
프린팅은 해본 지가 너무 오래되어서 기억이 가물거리는데..
혹... 폰트 크기를 Font.Size가 아닌 Font.Height로 설정해보세요.

그럼...


초보델피 님이 쓰신 글 :
: 인쇄를 하는데 프린터의 기종에 따라 폰트의 크기가 제어되지 않습니다.
: 이제까지 HP Deskjet 895 와 948을 사용하면서 아래의 소스를 실행하면 폰트 사이즈가 정확히 제어가 되었는데 HP DeskJet 6122와 같이 새로 나온 프린터 나 Qnix 3630E와 같은 프린터에서는 글자 크기가 제어되지 않습니다. 폰트 사이즈를 12로 주더라도 인쇄되어 나오는 크기는 30이상이 되네요.
:
: 아시는 분은 답변 부탁 드립니다
:
:
:   Printer.PrinterIndex := Printer.PrinterIndex;
:   Printer.GetPrinter(Device, Driver, Port, hDMode);
:   if hDMode <> 0 then
:   begin
:     pDMode := GlobalLock(hDMode);
:     if pDMode <> nil then
:     begin
:       {legal 용지로 바꾸는 예}
:       pDMode^.dmOrientation := DMORIENT_LANDSCAPE;          
:       pDMode^.dmFields := pDMode^.dmFields or
:                           DM_ORIENTATION or
:                           DM_PAPERSIZE or
:                           DM_PAPERWIDTH or
:                           DM_PAPERLENGTH;
:       pDMode^.dmFields    := pDMode^.dmFields or dm_PaperSize;
:       pDMode^.dmPaperSize := DMPAPER_FANFOLD_US;               
:       pDMode^.dmPaperWidth  := 3920; {단위는 1/10mm}
:       pDMode^.dmPaperLength := 2800; {단위는 1/10mm}
:       pDMode^.dmDefaultSource := DMBIN_AUTO;     //용지자동
:
:       GlobalUnlock(hDMode);
:     end;
:   end;
:
:   With Printer do
:   begin
:     f_Row := 0;
:     j := 0;
:     BeginDoc;
:     SetMapMode( Printer.Handle, MM_LOMETRIC );
:
:     Canvas.Font.Name  := '돋움체';
:     Canvas.Font.Style := [];
:
:     canvas.Pen.Width  := 3;
:     Canvas.Font.Size  := 12;
:     canvas.Pen.Color := clGreen;
:
:     canvas.Pen.Width  := 1;
:     canvas.Moveto( 200, - 540) ;  //line2
:     canvas.lineto(1300, - 540) ;
:     canvas.Moveto( 200, - 630) ;  //line3
:     canvas.lineto(1300, - 630) ;
:     canvas.Moveto( 370, - 720) ;  //line4
:     canvas.lineto(1300, - 720) ;
:     canvas.Moveto( 370, - 810) ;  //line5
:     canvas.lineto(1300, - 810) ;
:
:     Canvas.Font.Size  := 07;
:     Canvas.TextOut( 200, - 300, 'aaa');      
:     Canvas.TextOut(2200, - 300, 'bbb');  
:   
:     EndDoc;
:   end;

+ -

관련 글 리스트
9005 [질문]인쇄시 프린터 기종에 따라 폰트 크기를 제어할 수가 없네요 초보델피 860 2003/10/28
9014     Re:[질문]인쇄시 프린터 기종에 따라 폰트 크기를 제어할 수가 없네요 박지훈.임프 1112 2003/11/05
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.