Qt 4.3.2, cups 1.3.2
При печати с landscape orientation получаю странные результаты.
Вот пример кода:
void MyWidget::print()
{
QPrinter printer(QPrinter::HighResolution);
printer.setOrientation(QPrinter::Landscape);
QPrintDialog d(&printer, this);
if(d.exec() == QDialog::Accepted)
draw(&printer);
}
void MyWidget::draw(QPaintDevice* p)
{
QPainter painter(p);
QRect r(0,0,p->width() - 1, p->height() -1);
QPen pen(QBrush(Qt::red),5);
painter.setPen(pen);
painter.drawRect(r);
painter.drawLine(r.topLeft(), r.bottomRight());
painter.drawLine(r.bottomLeft(), r.topRight());
}
Если в диалоге печати я ставлю checkbox "Print to file", to Qt делает корректный pdf.
Eсли вывожу в cups-pdf, то лист в pdf'ке сориентирован правильно, а само изображение не довернуто на 90 градусов и обрезается.
На принтере (HP LJ1200) результат зависит от драйвера.
Postscript PPD - аналогично cups-pdf (т.е. изображение не довернуто)
pxlmono и hpijs - изображение вроде бы правильно ориентировано, но отступ на пол-листа и соответственно тоже обрезается.
Короче вопрос такой: на ваш взгляд это проблемы Qt или я не умею 'готовить' cups?
Да, при portrait orientation и cups-pdf и мой LJ1200 печатают корректно.