1. Получи 30.000 рублей. Для получения денег необходимо принять участие в конкурсе авторов codeby. С условиями и призами можно ознакомиться на этой странице ...

    Внимание! Регистрация авторов на конкурс закрыта.

    Скрыть объявление
  2. Требуются разработчики и тестеры для проекта codebyOS. Требования для участия в проекте: Знание принципов работы ОС на базе Linux; Знание Bash; Крайне желательное знание CPP, Python, Lua; Навыки системного администрирования. Подробнее ...

    Скрыть объявление

многостраничная печать и отступы Cricheditctrl

Тема в разделе "С и С++", создана пользователем Dope, 15 сен 2006.

Статус темы:
Закрыта.
  1. Dope

    Dope Гость

    Репутация:
    0
    Всем здрасьте.

    Надо сделать печать текста из CRichEditCtrl....
    печатаь он печатает, но без отступов по краям, сверху и снизу(текст печатаеться на всю страницы, а хотелось бы отступы(как ворд печатает)), а также не работает многостраничная печать(оно и понятно цикла нет, но не ясно какой цикл нужен.. ).
    Подскажите плз, что нужно добавит в нижеописсанном коде, чтобы заработала многостраничная печать и появились отступы...
    код реализации печати:

    CRichEditCtrl* pmyRichEditCtrl = &m_rtext;
    СDC* pMyPrinterDC;
    CPrintDialog dlg(FALSE);
    if (dlg.DoModal() == IDOK)
    {
    HDC hdc = dlg.GetPrinterDC();
    ASSERT(hdc);
    pMyPrinterDC = CDC::FromHandle(hdc);

    DOCINFO docinfo;
    memset(&docinfo, 0, sizeof(docinfo));
    docinfo.cbSize = sizeof(docinfo);
    docinfo.lpszDocName = _T("CDC::StartDoc() Code Fragment");
    pMyPrinterDC->StartDoc(&docinfo);
    pMyPrinterDC->StartPage();
    FORMATRANGE fr;

    long lPageWidth = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALWIDTH),1440,
    pMyPrinterDC->GetDeviceCaps(LOGPIXELSX));
    long lPageHeight = ::MulDiv(pMyPrinterDC->GetDeviceCaps(PHYSICALHEIGHT),
    1440, pMyPrinterDC->GetDeviceCaps(LOGPIXELSY));
    CRect rcPage(0, 0, lPageWidth, lPageHeight);

    fr.hdc = pMyPrinterDC->m_hDC;
    fr.hdcTarget = pMyPrinterDC->m_hDC;
    fr.rc = rcPage;
    fr.rcPage = rcPage;
    fr.chrg.cpMin = 0;
    fr.chrg.cpMax = -1;
    pmyRichEditCtrl->FormatRange(&fr, TRUE);
    RECT rcClient;
    pmyRichEditCtrl->GetClientRect(&rcClient);
    pmyRichEditCtrl->DisplayBand(&rcClient);
    pMyPrinterDC->EndPage();
    pMyPrinterDC->EndDoc();
    }
     
Загрузка...
Похожие Темы - многостраничная печать отступы
  1. zamanov
    Ответов:
    0
    Просмотров:
    712
  2. Pingvin1
    Ответов:
    7
    Просмотров:
    1.574
  3. GORDON13
    Ответов:
    2
    Просмотров:
    1.703
  4. Antigo
    Ответов:
    3
    Просмотров:
    1.090
  5. Bob84
    Ответов:
    12
    Просмотров:
    2.260
Статус темы:
Закрыта.

Поделиться этой страницей