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
[45232] Printer 할때 .. 빈 Page로 인쇄되는 현상에 대해...
장성호 [nasilso] 993 읽음    2006-06-07 22:07
C++Builder 6.0을 사용하구요
Form의 Image를 GetFormImage(); 함수를 통해  아래와 같이 Print하고있습니다.

그런데 여러Page 프린트할때...(총 8Page)
어떤Page는  인쇄가 안되는 경우가 발생합니다.

이는 프린터기 마다 다르게 나타납니다.
PC에 설치된

1) FinePrint에서는  Random하게 1,2Page가 인쇄안되고
2) Samsung프린터에서는 한페이지 건너 하나씩 인쇄가 되지않고 있습니다.

원인이 뭔지 궁금합니다.

프린터의 바깥쪽에 Magrin하고 관련된 것인지...?

[꼼수] 여러Page 인쇄할때
NewPage하지않고
BeginDoc() ,  EndDoc()를 반복해서 Print하면  빈Page로 인쇄되는것은 없어지기는 합니다.


//-------------------------------------------------------------------
void __fastcall  ReportPrint()
{
    TPrinter *Ptr = Printer();

    //------ 폼 이미지를 저장하기 위한 비트맵 공간을 확보
    Graphics::TBitmap       *frmImage = new Graphics::TBitmap();

    try
    {
        //------ 폼 이미지를 저장
        // 프린트 처리부
        Ptr->Title = "QH-CURVE Analysis Report";      // 인쇄 관리자에 인쇄 제목이 나오도록..
        Ptr->BeginDoc();
        for(int p=0;;)
        {
            if(RPT_FORM[p]==NULL)continue;
            frmImage = RPT_FORM[p]->GetFormImage();     //get form image
            Ptr->Canvas->StretchDraw(Rect(0,0,Ptr->PageWidth,Ptr->PageHeight),frmImage);
            p++;
            if(p<PAGE_COUNT)
            {
                Ptr->NewPage();
            }
            else break;
        }

        Ptr->EndDoc();
    }
    __finally
    {
        delete frmImage;
    }
}

+ -

관련 글 리스트
45232 Printer 할때 .. 빈 Page로 인쇄되는 현상에 대해... 장성호 993 2006/06/07
46752     Re:Printer 할때 .. 빈 Page로 인쇄되는 현상에 대해... alex 1072 2006/10/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.