Q&A

  • 텍스트 인쇄?
으아... 미치겠습니다.



인쇄를 하기 위해서



매핑모드 바꾼거 까지는 좋았습니다.



텍스트를 인쇄하기 전까지는 말이죠... -.-;;



그런데... 텍스트가 지 마음대로 인쇄가 되는 것입니다.



이 난관을 어떻게 극복해야 할까요?



알려 주세용...



저는 델파이의 Printer객체를 사용해서 인쇄를 하려 합니다.



이 질문을 윈도우API로 분류해도 되는지 몰겠네요...



그럼...





- 글을 읽어 주셔서 감사합니다.

4  COMMENTS
  • Profile
    남윤혁 1999.04.16 02:34
    -.-;; 무슨말인지 잘모르겠네요...



    다시 정리해서 올립니다.



    아래의 함수는 그리기 전용함수입니다.

    이곳에서 모든것을 그리죠...



    procedure DrawContent( c: TCanvas );

    begin

    with c do

    begin

    Rectangle( 150, 50, 250, 400 );

    MoveTo( 100, 100 );

    LineTo( 300, 300 );

    Font.Size:= 10;

    TextOut( 200, 200, '테스트' );

    Font.Size:= 20;

    TextOut( 200, 400, '테스트' );

    end;

    end;



    미리보기 버튼을 누르면 다음과 같이 화면에 나옵니다.



    procedure TfrmPrinter04.btnDrawClick(Sender: TObject);

    var

    sWin, sView: TSize;

    begin

    SetMapMode( imgArea.Canvas.Handle, MM_ISOTROPIC );

    SetWindowExtEx( imgArea.Canvas.Handle, 300, 300, @sWin );

    SetViewportExtEx( imgArea.Canvas.Handle, 300, 300, @sWin );



    DrawContent(imgArea.Canvas);

    end;



    여기서 imgArea는 TImage컴포넌트죠...



    그리고 인쇄버튼을 누르면



    procedure TfrmPreview.btnPrintingClick(Sender: TObject);

    var

    XPI, YPI: Integer;

    sWin, sView: Size;

    begin

    if prtDlg.Execute then

    begin

    Printer.BeginDoc;



    XPI:= GetDeviceCaps( Printer.Canvas.Handle, LOGPIXELSX );

    YPI:= GetDeviceCaps( Printer.Canvas.Handle, LOGPIXELSY );



    SetMapMode( Printer.Canvas.Handle, MM_ISOTROPIC );

    SetWindowExtEx( Printer.Canvas.Handle, XPI, YPI, @sWin );

    SetViewportExtEx( Printer.Canvas.Handle, XPI, YPI, @sWin );



    DrawContent( Printer.Canvas );

    Printer.EndDoc;

    end;

    end;



    요렇게 실행을 하죠...



    결과는 인쇄하면 폰트가 무자게 커진다는 말씀... -.-;



    이 문제를 어떻게 해결할까요?



    폰트에 어떤 조작을 가해야 하지 않나요?



    알려주세요...



    프리즈~





  • Profile
    남윤혁 1999.04.16 00:37
    다시 질문입니다.



    제가



    XPI:= GetDeviceCaps( Canvas.Handle, LOGPIXELSX );

    YPI:= GetDeviceCaps( Canvas.Handle, LOGPIXELSY );

    SetMapMode( Canvas.Handle, MM_ISOTROPIC );

    SetWindowExtEx( Canvas.Handle, 100, 100, @sWin );

    SetViewportExtEx( Canvas.Handle, XPI, YPI, @sWin );



    이 코드를 이용해서 인쇄를 했습니다.



    문제는 화면에 뿌렸을 때는 폰트의 사이즈에 따라



    화면의 비율에 따라 자연스럽게 나오지만



    인쇄로 들어가면 비율에 맞지 않는 이미지가



    나온다는 것이죠...



    이 문제를 해결하려면 어떻게 해야 할까요?



    T.T



    무진장 중요한 문제랍니다.



    그럼.. 고수님들 부탁드립니다.





  • Profile
    이정욱 1999.04.16 01:06
    화면 출력 후



    XPI := GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSX);

    YPI := GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSY);



    로 다시 계산 하신후 출력해 보세요.





    남윤혁 wrote:

    > 다시 질문입니다.

    >

    > 제가

    >

    > XPI:= GetDeviceCaps( Canvas.Handle, LOGPIXELSX );

    > YPI:= GetDeviceCaps( Canvas.Handle, LOGPIXELSY );

    > SetMapMode( Canvas.Handle, MM_ISOTROPIC );

    > SetWindowExtEx( Canvas.Handle, 100, 100, @sWin );

    > SetViewportExtEx( Canvas.Handle, XPI, YPI, @sWin );

    >

    > 이 코드를 이용해서 인쇄를 했습니다.

    >

    > 문제는 화면에 뿌렸을 때는 폰트의 사이즈에 따라

    >

    > 화면의 비율에 따라 자연스럽게 나오지만

    >

    > 인쇄로 들어가면 비율에 맞지 않는 이미지가

    >

    > 나온다는 것이죠...

    >

    > 이 문제를 해결하려면 어떻게 해야 할까요?

    >

    > T.T

    >

    > 무진장 중요한 문제랍니다.

    >

    > 그럼.. 고수님들 부탁드립니다.

    >

    >





  • Profile
    안치봉 1999.04.15 23:28
    남윤혁 wrote:

    > 으아... 미치겠습니다.

    >

    > 인쇄를 하기 위해서

    >

    > 매핑모드 바꾼거 까지는 좋았습니다.

    >

    > 텍스트를 인쇄하기 전까지는 말이죠... -.-;;

    >

    > 그런데... 텍스트가 지 마음대로 인쇄가 되는 것입니다.

    >

    > 이 난관을 어떻게 극복해야 할까요?

    >

    > 알려 주세용...

    >

    > 저는 델파이의 Printer객체를 사용해서 인쇄를 하려 합니다.

    >

    > 이 질문을 윈도우API로 분류해도 되는지 몰겠네요...

    >

    > 그럼...

    >

    >

    > - 글을 읽어 주셔서 감사합니다.



    안녕하세요!.



    질문의 범위가 너무 광범위 합니다. 질문을 하실때는 되도록 이면



    이런 이런 코드가 있는데 이런 부분에서 문제가 생기더라 식으로 작성 해주시면



    감사하겠습니다.





    • 문창완
    • 1999.04.17 00:42
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.17 01:17
      문창완 wrote: > 네모나 이미지의 각꼭지를 적당하게 > 라운드 처리하고싶습니다. > 도와주세요... > ...
    • 문창완
      1999.04.17 01:49
      안치봉 wrote: > 문창완 wrote: > > 이미지의 각꼭지를 적당하게 > > 라운드 처리하고싶습니다. > > ...
    • 안치봉
      1999.04.17 02:14
      문창완 wrote: > 안치봉 wrote: > > 문창완 wrote: > > > 이미지의 각꼭지를 적당하게 > > > 라운드 ...
    • 문창완
      1999.04.17 03:07
      정말 감사합니다... 조금만 복잡한 글만나요면... 프로그래밍 하는 사람으로써 세계화에 뒤쳐지지않을려...
    • 이상훈
    • 1999.04.16 23:25
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.17 02:38
      DBProgressBar라는것은 기본 컴포넌트가 아닌듯 싶습니다. 제 델파이에는 그런것이 없네요..쩝.. 혹시 숨...
    • 이상훈
      1999.04.17 02:47
      이정욱 wrote: > DBProgressBar라는것은 기본 컴포넌트가 아닌듯 싶습니다. > 제 델파이에는 그런것이 없...
    • 이정욱
      1999.04.17 04:46
      네.. 받아서 봤습니다. 쩝.. 안에 Help와 Demo.. 모두가 있네요... 그것을 참고하시면 잘 아실 수 있을것...
    • 김정선
    • 1999.04.16 22:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김영해
      1999.04.17 07:38
      김정선 wrote: > 저두 같은 문제가 있었어요.. 아시는 분 꼭좀 가르쳐 주세요 > > 전 델파이4.0 오라클...
    • 이정욱
      1999.04.17 02:28
      인스톨쉴드를 너무 믿으면 약간 문제가 있습니다. 델파이 버전에서 BDE포함시 약간의 버그가 있다고 발표...
    • 이정욱
      1999.04.17 02:36
      컴포넌트를 찾는 방법은 델파이 링커에 가보시면 델파이 수퍼페이지라는 곳이 있습니다. 그곳에는 정말 엄...
    • 하늘
    • 1999.04.16 20:24
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.17 00:47
      글쎄요... 광고/홍보란에 한번 써보세요. 하늘 wrote: > 안녕하세요... > 델파이로 만든 가계부 프...
    • 이호선
    • 1999.04.16 18:17
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.16 18:39
      이호선 wrote: > 안녕하세요.. > 현재 화면모드가 800*600모드의 화면에서 1024*768모드로 변환하였을때 ...
    • 이호선
    • 1999.04.16 18:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.16 18:35
      이호선 wrote: > 안녕하세요. > 좋은 아침입니다. > image component를 form크기에 맞추어 보여 줄려면 ...
    • 구창민
      1999.04.16 07:33
      이순희 wrote: > 안녕하세요... 또 질문 올리네요.. > 저번 답변 고마웠습니다.. 그런데.. 근본적인 문제...
    • bluepine
      1999.04.17 01:23
      구창민 wrote: > 이순희 wrote: > > 안녕하세요... 또 질문 올리네요.. > > 저번 답변 고마웠습니다.. ...
    • 엠마
    • 1999.04.16 05:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.16 06:51
      엠마 wrote: > 먼저 > 안녕하세요 게시판이 너무 좋아졌어요... > 검색하기가 너무 편해요... 추카합니...
    • 이호선
    • 1999.04.16 04:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.16 05:43
      캡쳐 이외의 방법은 제 생각에는 없습니다. 만약 가능성이 있다면 파일로 인쇄를 한 후 그것을 가지고 ...
    • 정남용
    • 1999.04.16 01:29
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김정선
      1999.04.23 00:51
      저두 같은 문제로 올렸는데 고맙게도 web@ns.nilex.co.kr라는 분이 메일을 보내왔더라구요.. Autoexec.bat...
    • 이정욱
      1999.04.17 02:26
      저도 역시 이런 문제 때문에 고생을 한적이 있었습니다. 전 엑세스 DB를 사용했을때 문제였죠. 그래서 결...
    • 김정선
      1999.04.16 22:56
      저두 같은 문제가 있었어요.. 아시는 분 꼭좀 가르쳐 주세요 전 델파이4.0 오라클 8.0.5버젼을 가지고 ...
    • 이정욱
      1999.04.16 02:17
      아무래도 케이블을 그냥 두갈래로 뽑으신것 같군요. 그렇게 하면 아마도 제데로 안될것 같네요... 그것보...
    • 화랑
      1999.04.16 03:06
      답변 감사합니다.. 문제는 제가 그 서버를 건드릴수가 없습니다. 지금 현재 나와있는 것은 프린터로 가...
    • 이정욱
      1999.04.16 05:08
      프린터포트를 제어하는것은 문제가 없습니다. 그것을 지원하는 컴포넌트를 본적이 있는데.... 아마도 찾아...
    • 화랑
      1999.04.17 18:11
      매번 감사합니다.. 저기 한가지만 더 하고 싶은데.. 프린트는 앱슨을 쓰거든요.. 혹시 서로 전달되는 ...
    • 이정석
    • 1999.04.16 00:10
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신인재
      1999.04.16 00:56
      이정석 wrote: > 안녕하십니까? > ActvieX Form으로 웹에서 데이타베이스를 사용하는 프로그램을 > 만...
    • 고부성
    • 1999.04.16 00:05
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.16 01:04
      음.. 두가지 가능성이 있습니다. 먼저 첫째, Path가 잘못되어있을 경우이죠. 실제로 C:sample.txt 에 저...
    • Faster
    • 1999.04.15 22:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.16 18:42
      > Faster wrote: > 출력물(QuickReport)에 대해 자세히 알고 싶습니다. > > 델파이 책중에 QuickReport...
    • 남윤혁
    • 1999.04.15 22:13
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 남윤혁
      1999.04.16 02:34
      -.-;; 무슨말인지 잘모르겠네요... 다시 정리해서 올립니다. 아래의 함수는 그리기 전용함수입니다. ...
    • 남윤혁
      1999.04.16 00:37
      다시 질문입니다. 제가 XPI:= GetDeviceCaps( Canvas.Handle, LOGPIXELSX ); YPI:= GetDeviceCaps( ...
    • 이정욱
      1999.04.16 01:06
      화면 출력 후 XPI := GetDeviceCaps(Printer.Canvas.Handle,LOGPIXELSX); YPI := GetDeviceCaps(Printe...
    • 안치봉
      1999.04.15 23:28
      남윤혁 wrote: > 으아... 미치겠습니다. > > 인쇄를 하기 위해서 > > 매핑모드 바꾼거 까지는 좋았...
    • 김영대
      1999.04.15 20:12
      > 이영일 wrote: > CUP랑 BIOS의 시리얼번호나 Product ID를 알구 싶은데 어떨게 해야 하나요... > CPU의...