Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Система рисования. Печать _ Как отмасштабировать картинку на странице?

Автор: mezmay 18.11.2010, 11:06

Есть QPixmap довольно большого разрешения, печатаю ее так:

    QPainter p(printer); 
    QPixmap pix = *currentPixmap();
    p.drawPixmap(printer->pageRect(), pix, pix.rect());


в этом случае картинка растягивается под размеры страницы, теряя пропорции. Как вставить картинку на страницу с сохранением пропорций, но чтобы она вся поместилась (не вылезала)?

Решено:
QPainter p(printer); 
    QRect pageRect = printer->pageRect();
    QPixmap pix = (*currentPixmap()).scaled(pageRect.size(), Qt::KeepAspectRatio, Qt::SmoothTransformation);
    p.drawPixmap(0, 0, pix);

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)