Bild in QPixmap laden funzt nicht richtig
Bild in QPixmap laden funzt nicht richtig
Hallo mal wieder.
Ich habe eine Frage und wuerde euch gerne zu Rate ziehen:
In einem QLabel moechte ich ein Bild darstellen.
Fuer einige Formate klappt das wunderbar, fuer viele andere nicht (bricht dann mit Segmentation Fault ab, weil ich spaeter die nat. leere Pixmap benutzen moechte)
Bitmaps z.B. klappen, jpgs, gifs nicht.
Ich arbeite unter SUSE 9.2 mit QT3
Zum Laden der Bilder habe ich einen QFileDialog mit FileFilter benutzt (*.PNG, *.JPG, usw).
Hier der simple code dazu im Label:
///////////////////////////////////////////////////
//imago ist ein QImage, bild ist eine QPixmap
imago.load(actualPath);
bild = imago;
if(imago.isNull()) cout<<"imago ist NULL"<<endl;
//////////////////////////////////////////////////
wenn ich jpgs etc lade kommt die cout-Anweisung (s.o.)
Die Pfade zu den Bildern habe ich ueberprueft, klappen.
Ich habe mir mal zusaetzlich das FileFormat des zu ladenden Bildes ausgeben lassen:
cout<<imago.imageFormat(actualPath)<<endl;
Bei "Pic.bmp" steht dann: BMP
Bei "Pic.png": PNG
Bei einem jpg kommt garnichts.
Und hier das seltsame: bei einem anderen jpg, was komischerweise darzustellen geht, steht: PGMRAW
An Zugriffsrechten koennte es doch eher nicht liegen, oder? Habe die des nicht funkt. jpg den Rechten des funktionierende jpg angepasst, ohne Erfolg.
Ich kann mir nicht vorstellen, dass man in QT bzw in ein QImage kein JPG oder GIF laden kann.
Habt ihr eine Ahnung?
Gruesse!
Ich habe eine Frage und wuerde euch gerne zu Rate ziehen:
In einem QLabel moechte ich ein Bild darstellen.
Fuer einige Formate klappt das wunderbar, fuer viele andere nicht (bricht dann mit Segmentation Fault ab, weil ich spaeter die nat. leere Pixmap benutzen moechte)
Bitmaps z.B. klappen, jpgs, gifs nicht.
Ich arbeite unter SUSE 9.2 mit QT3
Zum Laden der Bilder habe ich einen QFileDialog mit FileFilter benutzt (*.PNG, *.JPG, usw).
Hier der simple code dazu im Label:
///////////////////////////////////////////////////
//imago ist ein QImage, bild ist eine QPixmap
imago.load(actualPath);
bild = imago;
if(imago.isNull()) cout<<"imago ist NULL"<<endl;
//////////////////////////////////////////////////
wenn ich jpgs etc lade kommt die cout-Anweisung (s.o.)
Die Pfade zu den Bildern habe ich ueberprueft, klappen.
Ich habe mir mal zusaetzlich das FileFormat des zu ladenden Bildes ausgeben lassen:
cout<<imago.imageFormat(actualPath)<<endl;
Bei "Pic.bmp" steht dann: BMP
Bei "Pic.png": PNG
Bei einem jpg kommt garnichts.
Und hier das seltsame: bei einem anderen jpg, was komischerweise darzustellen geht, steht: PGMRAW
An Zugriffsrechten koennte es doch eher nicht liegen, oder? Habe die des nicht funkt. jpg den Rechten des funktionierende jpg angepasst, ohne Erfolg.
Ich kann mir nicht vorstellen, dass man in QT bzw in ein QImage kein JPG oder GIF laden kann.
Habt ihr eine Ahnung?
Gruesse!
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Laut http://doc.trolltech.com/3.3/qimageio.html würde ich mal folgende Funktionen probieren:
http://doc.trolltech.com/3.3/qimageio.html#inputFormats
http://doc.trolltech.com/3.3/qimageio.h ... putFormats
http://doc.trolltech.com/3.3/qimageio.html#inputFormats
http://doc.trolltech.com/3.3/qimageio.h ... putFormats
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten: