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

C++빌더 Q&A
C++Builder Programming Q&A
[12424] 정말 프린터 때문에 미치겠습니다. 답변을 달아 주세요
오정훈 [geniusjh] 911 읽음    2001-11-07 15:36
지금 인쇄 문제가 되고 있습니다.

저는 프로그램을 만들때 이렇게 만들 었습니다.

우선 퀵레포트안에 이미지를 리소스 받아서 배경에 깔았습니다.
그리고 나서 그위에 선을 그리고 레이블을 올리고 그렇게 했습니다.
이렇게 된 것들을 그대로 QuickRef->Preview 하지 않고,

      NameInfo->QuickRep1->Prepare();
      count = NameInfo->QuickRep1->QRPrinter->PageCount;
      pMetafile = NameInfo->QuickRep1->QRPrinter->GetPage(count);
      p->Title = "성명장(性名狀)";

      pMetafile->Width = GetDeviceCaps(p->Handle, PHYSICALWIDTH);
      pMetafile->Height = GetDeviceCaps(p->Handle, PHYSICALHEIGHT);

선언하고 이것을 메타 파일로 변환을 한뒤에 미리보기를 만들었습니다.

그리고 나서 그 미리보기에서

   TPrinter *p = Printer();
   TRect MarkPos; //stretchdraw함수를 사용하기위해서는 반드시 필요한 변수임.
   MarkPos=Rect(0,0,p->PageWidth,p->PageHeight); //인쇄될 종이의 위치를 픽셀단위로 지정한다

   if (PrintDialog1->Execute() == true)
   {
       PrintBut->Enabled = false;
       p->BeginDoc();
       p->Canvas->StretchDraw(MarkPos,MF);  //프린트의 사이즈에 맞게 들어간다.
       p->EndDoc();
       PrintBut->Enabled = true;
       Application->MessageBox("인쇄가 완료 되었습니다.", "확 인", MB_OK);
   }

이렇게 인쇄를 선언을 했습니다.
그런데 다른 제품에서는 문제가 없는데 삼성 신제품에서는 안에있는 이미지가 검게 나오거나 흐리게 나오는 현상이 계속 생기고 있습니다.
이프로그램은 인쇄를 하는 것이 제일 중요한데 이문제가 생겨서 삼성 신제품 프린터를 가지고 있는 고객에게는 판매를 하지 못하고 있습니다.

보시고 좋은 답변을 부탁 드립니다.

+ -

관련 글 리스트
12424 정말 프린터 때문에 미치겠습니다. 답변을 달아 주세요 오정훈 911 2001/11/07
12439     Re:정말 프린터 때문에 미치겠습니다. 답변을 달아 주세요 개박살.U&I 1197 2001/11/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.