QGui pode ser utilizado em um aplicação console QApplication?



  • Galera eu peguei um trecho de código para escrever texto em imagens porém eu gostaria que fosse uma aplicação console. Pergunta, posso utilizar QGui juntamente com uma QApplication? Se não existe outra forma de eu escrever em arquivos de imagens.



  • Depende, você pode criar um novo projeto console baseando-se pelo código QGui, mas creio eu que ficaria um pouco limitado.

    Você pode, por exemplo, se a aplicação requer a localização da imagem e o texto que quer escrever, você pode pedir isso como parâmetros na aplicação console.



  • Então, é isso mesmo, no programa eu passaria o texto e o nome do arquivo de imagem como parâmetros. Mas o erro "ASSERT failure in QColormap: A QApplication object needs to be constructed before QColormap is used."

    olha o código que eu fiz. Tem algum erro?

    @
    #include <QtCore/QCoreApplication>
    #include <QtGui/QPixmap>
    #include <QtGui/QPainter>

    int main(int argc, char *argv[])
    {
    QCoreApplication a(argc, argv);

    int uLeftPadding  = 5;
    int uLineDistance = 36;
    
    QStringList texto;
    texto.clear();
    texto << "huauhua" << "Funciona";
    
    QPixmap pixmap(3508, 2480);
    pixmap.fill(QColor(255,255,255));
    
    QPainter painter(&pixmap);
    
    QFont font("", 36);
    painter.setFont(font);
    
    for(int c1 = 0; c1 < texto.length(); c1++){
        painter.drawText(QPointF(uLeftPadding, uLineDistance * (10 + 1)), texto.at(c1).toLocal8Bit().constData());
    }
    pixmap.save("test.jpeg");
    return a.exec&#40;&#41;;
    

    }
    @



  • Galera obrigado pela ajuda mas eu já achei a caca que eu fiz. Segue o código para comparar com o código postado acima.

    @
    #include <QtGui/QApplication>
    #include <QtGui/QPixmap>
    #include <QtGui/QPainter>

    int main( int argc, char **argv )
    {
    QApplication app( argc, argv );

    int uLeftPadding  = 5;
    int uLineDistance = 46;
    
    QStringList texto;
    texto.clear();
    texto << "huauhua" << "Funcionou!!!";
    
    QPixmap pixmap(3508, 2480);
    pixmap.fill(QColor(255,255,255));
    
    QPainter painter(&pixmap);
    
    QFont font("", 36);
    painter.setFont(font);
    
    for(int c1 = 0; c1 < texto.length(); c1++){
        painter.drawText(QPointF(uLeftPadding, uLineDistance * (c1 + 1)), texto.at(c1).toLocal8Bit().constData());
    }
    pixmap.save("test.jpeg");
    
    return 0;
    

    }
    @

    Há o .pro fica desta maneira também ...

    @
    QT += core gui

    TARGET = teste3

    TEMPLATE = app

    SOURCES += main.cpp
    @


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.