Расстояние между строками. Qt QPainter::drawText

400
19 декабря 2016, 19:58

Здравствуйте! Вывожу текст на печать через QPainter::drawText. Подскажите как можно изменить интервал между строками.

Answer 1

Доброго времени суток! QPainter предоставляет только высокоуровневое API по управлению выводом текста на экран, чтобы иметь возможность более тонко влиять на процесс вывода текста необходимо использовать класс QTextLayout. Вот пример из документации:

 int leading = fontMetrics.leading();
 qreal height = 0;
 textLayout.beginLayout();
 while (1) {
     QTextLine line = textLayout.createLine();
     if (!line.isValid())
         break;
     line.setLineWidth(lineWidth);
     height += leading;
     line.setPosition(QPointF(0, height));
     height += line.height();
 }
 textLayout.endLayout();
 // ...
 QPainter painter(this);
 textLayout.draw(&painter, QPoint(0, 0));
READ ALSO
Компиляция программы

Компиляция программы

Есть исходник программы управления устройством через USB (микроконтроллер Attiny45)

289
Java socket: зависает соединение

Java socket: зависает соединение

Пишу код на Java, код прикреплю ниже, там же комментарии в местах, где зависает соединениеПо документации в c =in

356
Форматирование ввода/вывода в С/С++

Форматирование ввода/вывода в С/С++

Стоит такая задача: есть переменная типа int, которую должен ввести пользовательКак поставить защиту "от дурака", т

331
Thread-safe очередь, и все-все-все

Thread-safe очередь, и все-все-все

Опять у меня идиотский вопрос (простите, но впадаю в старческий маразм, "бабушка ничего не помнит")

237