Примитивное рисование в файл |
Здравствуйте, гость ( Вход | Регистрация )
Примитивное рисование в файл |
NordWest |
24.5.2009, 18:35
Сообщение
#1
|
Студент Группа: Участник Сообщений: 86 Регистрация: 26.11.2008 Пользователь №: 433 Спасибо сказали: 1 раз(а) Репутация: 0 |
Здравствуйте!
Требуется рисовать графики, для начала совсем примитивные, но опыта нет и в примерах в основном пишется про рисование в окнах. А нужно из консольного приложения в файл .jpg, .bmp... ну в любой графический. Из примеров и описания набрал кое чего, пробую так: CODE QImage *baseImg; QVector<QRgb> colormap; int maxIW = 1160; int maxIH = 1040; baseImg = new QImage(maxIW, maxIH, QImage::Format_Indexed8); for (k=0; k<256;k++) colormap << qRgb(k,k,k); baseImg->setColorTable(colormap); QPainter painter(baseImg); painter.setBrush(Qt::cyan); painter.setPen(Qt::darkCyan); painter.drawEllipse(10,20, 80,70); painter.end(); baseImg->save("drawing.bmp"); Получается черный прямоугольник размерами 1160х1040. Что я тут упустил для правильного черчения? О, изменил одну строчку: CODE baseImg = new QImage(maxIW, maxIH, QImage::Format_RGB444); Добавил ещё: CODE QBrush baseBrush(Qt::white, Qt::SolidPattern); painter.fillRect(0, 0, 100, 100, baseBrush); Получилось: Сообщение отредактировал NordWest - 24.5.2009, 18:37 |
|
|
kwisp |
24.5.2009, 18:41
Сообщение
#2
|
астарожна ынтжинэр Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: 23 |
for (k=0; k<256;k++) colormap << qRgb(k,k,k); baseImg->setColorTable(colormap); зачем это? в дебуг ничего не вываливается случаем? А нужно из консольного приложения в файл .jpg, .bmp... ну в любой графический. если я не ошибаюсь чтоб рисовать и создать устройства рисования нужно создать не консольное приложение. QPixmap и д.р. точно использует то что создает QApplication, а QCoreApplication не достаточно.. Цитата Warning: Qt requires that a QApplication object exists before any paint devices can be created. Paint devices access window system resources, and these resources are not initialized before an application object is created. почему выбрал QImage? Сообщение отредактировал kwisp - 24.5.2009, 18:41 |
|
|
Текстовая версия | Сейчас: 15.1.2025, 23:03 |