Название: Помогите вписать строку в прямоугольник Отправлено: Caduceus от Декабрь 26, 2010, 23:25 Есть строка и есть железно заданный прямоуголник. Надо написать строку в прямоуголник с центрированием, чтоб вся строка туда убралась. Как это делают? Для каждого размера фонта смотрят списывается или нет, и есть нет, то уменьшают размер и все заново? Если делают всегда так, то вопрос:
Как определить размеры, которые займет строка после отрисовки заданным фонтом? Название: Re: Помогите вписать строку в прямоугольник Отправлено: alexman от Декабрь 27, 2010, 00:07 QFontMetrics, QFontMetricsF
Название: Re: Помогите вписать строку в прямоугольник Отправлено: insamo от Январь 10, 2011, 15:25 painter->setFont(QFont("Times", 12, QFont::Bold));
painter->setPen(Qt::white); painter->setBrush(QBrush(Qt::white)); painter->drawText(boundingRect(),Qt::AlignCenter,textCaption); Название: Re: Помогите вписать строку в прямоугольник Отправлено: alex2013 от Август 07, 2013, 12:05 Не хотелось бы создавать новую тему, так как у меня такой же вопрос "Помогите вписать строку в прямоугольник".
Код: void Page::paintEvent(QPaintEvent * /* event */) Приведенный выше код, рисует на экране строчку. Но если ширина экрана небольшая, то эта строчка вся на экране не помещается и происходит ее обрезание. А как сделать так ,чтобы строчка при сжатии экрана уменьшалась автоматически по ширине при этом разбиваясь на несколько строк ? Ну а при расширении экрана строчка за ним автоматически вытягивалась. Название: Re: Помогите вписать строку в прямоугольник Отправлено: dio от Август 07, 2013, 12:16 Вот так:
Код: void Page::paintEvent(QPaintEvent * /* event */) Название: Re: Помогите вписать строку в прямоугольник Отправлено: alex2013 от Август 07, 2013, 13:18 Спасибо, dio .Ваш пример помог.
|