crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Не понятно со шрифтами...
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
FantasyOr Дата 8.10.2010, 15:06
  C drawText() и drawRect() не только красивее, но и быстрее, причем существенно
пример:
    QPainterPath path;
    QRectF rect;
    rect.setHeight(20);
    rect.setWidth(200);
    for (int i=0; i<1000; ++i)
    {
        rect.moveTo(0, i*50);
        path.addRect(rect);
    //    painter.drawRect(rect);
    }

    painter.drawPath(path);

рисуется примерно 17 секунд.

    QPainterPath path;
    QRectF rect;
    rect.setHeight(20);
    rect.setWidth(200);
    for (int i=0; i<1000; ++i)
    {
        rect.moveTo(0, i*50);
    //    path.addRect(rect);
        painter.drawRect(rect);
    }

    //painter.drawPath(path);

рисуется 2 секунды.
через path работает ~ в 8 раз медленнее. в моем примере, он конечно может быть и не совсем корректный.
FantasyOr Дата 6.10.2010, 13:54
  я может и не прав, из соображений быстродействия, я добавляю в path текст, много строк, в нужных мне местах, а потом этот path добавляю на сцену и он быстренько рисуется? вместо многих циклов отрисовок.

да действительно если использовать drawText(), то будет красиво.
ufna Дата 6.10.2010, 12:31
  меня напрягает рисование через QPainterPath :) почему drawText() не подходит? задав пеинтеру нужный шрифт.
FantasyOr Дата 6.10.2010, 12:21
  да, QFontDatabase выдает кучу шрифтов.
но вот

сравнение шрифтов в мили-проекте(проба шрифтов) и в ворде. они совсем не похожи, а нужно сходство ибо получается, что не получается...
почему шрифты на сцене не похожи на оные в ворде или другом редакторе?
Спасибо.
FantasyOr Дата 5.10.2010, 13:14
  "а как рисуешь и задаешь?"


font.setFamily("Times"); // или другой
QPainterPath textPath;
textPath.addText(poit, font, text);
kwisp Дата 5.10.2010, 13:12
  FantasyOr,
а
Цитата
QStringList QFontDatabase::applicationFontFamilies ( int id ) [static]
Returns a list of font families for the given application font identified by id.

This function was introduced in Qt 4.2.

See also addApplicationFont() and addApplicationFontFromData().

что даёт?
ufna Дата 5.10.2010, 12:38
  а как рисуешь и задаешь?
FantasyOr Дата 5.10.2010, 12:36
  Здравствуйте.
Подскажите пожалуйста. шрифты нужно как-то регистрировать в Qt? Такое ощущение, что есть только 2 шрифта. Рисую на сцене, года задаю имя шрифта как "Tahoma", "Arial"...(нормальные имена шрифтов), то всегда один шрифт, а если задаю некорректное имя "Tu123turus"... то другой шрифт применяется...
В какую сторону посоветуете идти... =)
Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 1.5.2024, 9:24