Anzeige:
Ergebnis 1 bis 3 von 3

Thema: Qt: Skaliertes Pixmap als *.bmp speichern

  1. #1
    Registrierter Benutzer
    Registriert seit
    12.03.2009
    Beiträge
    36

    Qt: Skaliertes Pixmap als *.bmp speichern

    Hallo,

    ich würde gerne ein QPixmap (eines QLabels), dessen Größe und Aspektverhältnis ich mit resize(width, height) geändert habe, als bmp speichern. Leider bekomme ich das nicht hin. Es wird immer das nicht skalierte/verzerrte Bild gespeichert.
    Weiß jemand einen Rat?
    Danke

  2. #2
    Registrierter Benutzer
    Registriert seit
    23.05.2004
    Beiträge
    592
    Das folgende Programm funktioniert bei mir so wie ich es erwarten würde:
    Code:
    #include "QtCore/QObject"
    #include "QtGui/QApplication"
    #include "QtGui/QLabel"
    #include "QtGui/QPixmap"
    #include "QtGui/QPushButton"
    #include "QtGui/QWidget"
    
    class mainwindow : public QWidget
    {
      Q_OBJECT
    public:
      mainwindow() : label("Text Text ABC", this), button("Save pixmap to file and quit!", this) {
        label.resize(400, 300);
        button.move(0, 300);
        
        QObject::connect(&button, SIGNAL(clicked()), this, SLOT(save_file()));
        QObject::connect(&button, SIGNAL(clicked()), qApp, SLOT(quit()));   
      }
      
    public slots:
      void save_file() {
        QPixmap pix(label.size());
        label.render(&pix);
        pix.save("save_label.output.bmp");
      }
      
    private: 
      QLabel label;
      QPushButton button;
    };
    
    int main( int argc, char *argv[] ) {
      QApplication app(argc, argv);
      
      mainwindow app_window;
      app_window.show();
      
      return app.exec();
    }

  3. #3
    Registrierter Benutzer
    Registriert seit
    12.03.2009
    Beiträge
    36
    Hallo locus vivendi,

    vielen Dank für die Lösung meines Problems
    Funktioniert super!

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •