Aktywne Wpisy

one_man_army +666
To co tu widzicie, to jest efekt lat treningu, zawziętości, wytrwałości, potu, walki z przeciwnościami, pogodą, trudu i nie małych pieniędzy. I tak oto uzyskałem licencję SPL (pilota szybowcowego). Pijcie ze mno kompot. #chwalesie #szybownictwo
źródło: IMG_6697
Pobierz
RelaniU +160





To moja funkcja drukująca:
if (template_ptr != Q_NULLPTR) {----QPrinter printer(QPrinter::HighResolution);
----if (QPrintDialog(&printer, this).exec() == QDialog::Accepted) {
--------if (QPageSetupDialog(&printer, this).exec() == QDialog::Accepted) {
------------QPainter painter(&printer);
------------painter.setRenderHint(QPainter::Antialiasing);
------------painter.setRenderHint(QPainter::TextAntialiasing);
------------qreal x, _y, h, w, fake;
------------ui->graphicsView->sceneRect().getRect(&x, &_y, &w, &fake);
------------h = template_ptr->page_height*2.0;
------------qint32 page = 0;
------------while (true) {
----------------qreal y = _y + h*page;
----------------QRectF leftRect(x, y, w, template_ptr->page_height*2.0*5.0 - h*page);
----------------if (ui->graphicsView->scene()->items(leftRect).length() <= 0) {
--------------------break;
----------------}
----------------QRectF sourceRect(x, y, w, h);
----------------ui->graphicsView->scene()->render(&painter, printer.pageRect(), sourceRect);
----------------printer.newPage();
----------------page++;
------------}
--------}
----}
}
Chodzi w sumie tylko o tę komendę bo reszta działa:
ui->graphicsView->scene()->render(&painter, printer.pageRect(), sourceRect);
Nie wiem jak rozwiązać problem QGraphicsTextItem które znajdują się na linii strony, drukowane są one tak jak na załączonym screenie. Tzn. mógłbym rozpisać funkcję która to sprawdza, przesuwa... ale to by pewnie spowodowało masę problemów, nie ma jakiegoś hinta czy prostego rozwiązania dla tego problemu? Każdy wiersz to taki string: "([nr]) [nazwisko], [imię]\n (siła: [siła])" i nie powinien być ucinany.
źródło: comment_goL2zPz9933r0R6aS22jShlczLpIbpVs.jpg
Pobierzźródło: comment_Q8f6XqLjdU50IBoUquIIwfY8a0O2RBVP.jpg
Pobierz