Q&A

  • 프린터 설정 변환(여백)
여러개의 프린터를 사용하다 보니 각 프린터 마다 여백설정이 달라서 출력물이

바로 나오지 않고 잘립니다.

델마당에서 자료를 얻었는데 제가 하고자하는 부분은 OCX로 지원되는 F1Book을

바로 출력하고자 합니다.

그런데 여백을 조정한후에 출력해도 전혀 변화 없어서 이렇게 도움을 청합니다.

바쁘시겠지만 한번 봐주세요..

감사합니다.



참고: F1Book1.FilePrint(true) ;

제가 수정한 부분입니다.



==============================아래=======================================

unit Unit1;



interface



uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

OleCtrls, vcf1, StdCtrls, printers;



type

TForm1 = class(TForm)

Button1: TButton;

F1Book1: TF1Book;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;



var

Form1: TForm1;



implementation



{$R *.DFM}



// 그리는 루틴

procedure DrawPage( Canvas: TCanvas );

begin

Canvas.Rectangle( 0, 0, 1000, -200 );

end;



// 기준 점을 APoint로 바꾸고 현재의 기준점을 리턴한다.

function SetOrgPoint( APoint: TPoint ): TSize;

var

Org : TPoint;

begin

Escape( Printer.Canvas.Handle, GETPRINTINGOFFSET, 0, nil, @Org );

SetWindowOrgEx( Printer.Handle, Org.X-APoint.X, APoint.Y-Org.Y, @Result );

end;



//메인 루틴

procedure TForm1.Button1Click(Sender: TObject);

var

OldMap: Integer;

OldOrg: TSize;

begin

{인쇄를 시작한다}

Printer.BeginDoc;

{현재 매핑모드를 oldMap에 저장하고 새로운 매핑모드(0.1mm)를 적용한다}

OldMap := SetMapMode( Printer.Handle, MM_LOMETRIC );

{현재의 기준점을 OldOrg에 저장하고 새로운 기준점(20mm)을 적용한다}

OldOrg := SetOrgPoint( Point( 200,200 ) );



try

{그린다}

//DrawPage( Printer.Canvas ); //<------원래 프린터하는 부분

F1Book1.FilePrint(true); //<------제가 프린터하고자 하는 부분



{여기서 finally 구문은 필히 사용해서 프린터가 먹통이 되는일이 없게..}

finally

{기준점을 원래대로 복구한다}

SetOrgPoint( Point( OldOrg.x, OldOrg.y ) );



{매핑모드를 원래대로 복구한다}

SetMapMode( Printer.Handle, OldMap );



{인쇄를 종료한다}

Printer.EndDoc;

end;

end;



end.

0  COMMENTS
    • 정남용
    • 1999.05.07 19:45
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 하윤철
      1999.05.07 20:36
      정남용 wrote: > 문자를 입력받을때 > 마스크에디트를 사용하게 되면 일정한 형식으로 받을수 있는데... ...
    • 1999.05.07 19:59
      정남용 wrote: > 문자를 입력받을때 > 마스크에디트를 사용하게 되면 일정한 형식으로 받을수 있는데... ...
    • 정남용
      1999.05.07 20:08
      > 어떤 상황인지는 모르겠지만, > 보통 추가될때 그렇겠죠? > 그러면 table콤포넌트 이벤트에 보면 > In...
    • 이중현
    • 1999.05.07 19:42
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정재균
      1999.05.08 00:58
      생각보다 간단한 문제인것 같은데요.. 혹시 폼을 닫을때 Table을 Close하셨습니까..? 컴파일시 그전에 ...
    • 이민병
    • 1999.05.07 19:37
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 정주영
      1999.05.08 04:40
      이민병 wrote: > 델파이 공부를 시작한지 얼마 안되는데요 > 데이타 모듈을 이용하면 data access관련 컴...
    • 정남용
      1999.05.07 20:22
      DataModule을 사용하는것은 간단합니다... 먼저 New..메뉴를 선택하셔서 DataModule을 만들어요... 그리...
    • 1999.05.07 19:55
      이민병 wrote: > 델파이 공부를 시작한지 얼마 안되는데요 > 데이타 모듈을 이용하면 data access관련 컴...
    • 이민병
      1999.05.07 23:50
      답변 감사합니다. 그런데 updatesql을 쓰는 방법을 잘 모르겠네요. 기존의 방법(책자에 있는)은 수정시 ...
    • 이호선
    • 1999.05.07 18:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.07 20:21
      먼저 Luxent(LightLib)사의 총판은 나이렉스 입니다. LightLib제품군을 구입하실 수는 있지만 기술 지원및...
    • 허정수
    • 1999.05.07 17:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 1999.05.07 20:03
      허정수 wrote: > pdf화일을 프로그램 상에서 로딩할수 있는 방법은 없나요??? > > 알타비스트라는 인터...
    • 이순희
    • 1999.05.07 10:20
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 하윤철
      1999.05.07 20:46
      이순희 wrote: > 안녕하세요... > 또다시 질문을 올립니다.. > 이번에는 다름이 아니라.. >...
    • 정남용
      1999.05.07 19:59
      우선 이건 편법임을 알려드립니다... 물론 날짜가 정상적으로 입력되었음을 가정하는 경우구요... 질의 ...
    • Heaven
    • 1999.05.07 09:18
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유수
      1999.05.09 22:07
      안녕하세요. 마스크 에디트에서 오른쪽 마우스 버턴을 누르면 마스크를 편집할 수 있는 메뉴가 있...
    • 최영호
    • 1999.05.07 07:28
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 황준동
      1999.05.17 23:29
      최영호 wrote: > 안녕하십니까? > 초보가 질문을 하나 올립니다. > 다름이 아니라 제가 메일 프로그램을...
    • 최영호
      1999.05.17 21:45
      대답할 가치조차 없는 질문인것 같군요....... 여긴 고수들이 많이 있는줄 아는데..... 너무 초보적인 문...
    • 강신구
    • 1999.05.07 06:32
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.07 17:09
      또하나 한델 자료실에 가보시면 ICS 최신버전이 있습니다... 테스트 해보지는 못했지만 그것도 괜찬지 않...
    • 이정욱
      1999.05.07 17:03
      델파이 버전이 4이십니까? 그러면 서비스 패치를 하셨는지요? 델파이안의 소켓이 버그가 조금있어서 패치...
    • 강신구
      1999.05.07 18:42
      이정욱 wrote: > 델파이 버전이 4이십니까? > 그러면 서비스 패치를 하셨는지요? > 델파이안의 소켓이 ...
    • 이방인
    • 1999.05.07 04:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 송창규
      1999.05.08 13:00
      각 픽셸의 색도를 조정하면 되지요. 보통 하이컬러와 트루컬러에서 픽셸은 R, G, B값으로 구성되는데 이...
    • 이건환
    • 1999.05.07 04:30
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.07 16:58
      시리얼 포트를 제어하는 컴포넌트는 상당 수 있습니다. 공개서부터 상용까지~ 델파이 수퍼페이지에 가서 ...
    • 김성제
    • 1999.05.07 03:46
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 송기원
      1999.05.07 20:47
      Listing A. MDIForms.dpr library MDIForms; uses SysUtils, Classes, Forms, Windows, //MDI Child...
    • 황순영
    • 1999.05.07 03:18
    • 0 COMMENTS
    • /
    • 1 LIKES
    • 김지건
    • 1999.05.07 03:09
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.07 16:54
      프로그램을 실행시키고 프로그램이 종료될때까지 기다리는 함수 입니다. 참고하세요. function TMainFo...
    • 김지건
      1999.05.07 18:48
      자꾸 여쭤 보아서 정말 죄송한데요?? 전 제가 만든 프로그램이 실행중에 "TalNet.exe"라를 프로그램이...
    • 서영택
    • 1999.05.07 00:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.05.07 06:00
      서로다른 디비의 조인은 시도 했더니 아래와 같은 결과가 나오는 군요 From절이하를 보시면 이해가 가시리...
    • 유수
      1999.05.07 00:42
      안녕하세요. 게임이 실행될 때 전체 화면을 장악(?)하는 것은 다이렉스X를 이용하기 때문에 가능한 것...
    • 정재균
      1999.05.08 01:04
      헤헤..더 간단하게 해봅시다..전 말로만 설명해드릴께요.. 쩝..지금 델파이가 깔려 있지 않아서리.. 간...
    • 짱구
    • 1999.05.06 22:30
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.07 16:52
      모뎀을 제어하기는 포트만 제어하면 되기때문에 그리 어려운것은 없습니다. 하지만 모뎀의 팩스를 제어하...
    • 이호선
    • 1999.05.06 20:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.05.06 21:39
      이호선 wrote: > 안녕하세요. > 어플리케이션 Close시에 작업표시줄에 Tray가 나타납니다. > 이것을 클...