Вывод векторной картинки |
Здравствуйте, гость ( Вход | Регистрация )
Вывод векторной картинки |
Гость_Гость_Aline_u_*_* |
15.7.2013, 10:24
Сообщение
#1
|
Гости |
Добрый день! Только недавно начала изучать Qt, поступило задание: необходимо на экран вывести векторные картинки, при этом они должны стыковаться друг с другом, к ним должен быть прикручен текст и их можно убирать (удалять). В связи с этим возникли вопросы: я вот таким образом (по нажатию на кнопку) вывожу картинку
почитала, что аddPixmap используется для растровых изображений, мне же надо вывести векторное. Что тогда использовать? Еще мне надо вывести в определенное место, т.е. задать координаты, к тому же следующую картинку надо пристыковать к предыдущей,т.е. мне надо знать координаты предыдущей картинки. Как их узнать? |
|
|
ilyabvt |
15.7.2013, 17:08
Сообщение
#2
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
Вам нужно будет использовать модуль QtSvg, а конкретнее класс QSvgRenderer.
http://qt-project.org/doc/qt-5.1/qtsvg/qtsvg-index.html http://qt-project.org/doc/qt-4.8/qtsvg.html у этого класса есть функция какой QRect передадите там и нарисуется.
Сообщение отредактировал ilyabvt - 15.7.2013, 17:12 |
|
|
Гость_aline_* |
19.7.2013, 15:31
Сообщение
#3
|
Гости |
Вам нужно будет использовать модуль QtSvg, а конкретнее класс QSvgRenderer. http://qt-project.org/doc/qt-5.1/qtsvg/qtsvg-index.html http://qt-project.org/doc/qt-4.8/qtsvg.html у этого класса есть функция какой QRect передадите там и нарисуется.Спасибо за ответ! А для чего используется render? Просто я начала использовать QGraphicsScene и QGraphicsSvgItems. |
|
|
ilyabvt |
19.7.2013, 21:18
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
Рендерит изображение на наследниках QPaintDevice с помощью QPainter. QPainter это класс для рисования, в конструктор или в его функцию begin должен быть передан PaintDevice (холст на котором будет производиться рисование). Функцию render использует объект QPainter и рисует изображение на связанном с ним холсте.
Не принципиально что и использовать, исключительно вопрос удобства. Вот есть пример, тут тоже используется QGraphicsScene и QGraphicsSvgItems: SVG Viewer Example |
|
|
Текстовая версия | Сейчас: 7.5.2024, 20:32 |