Seite 1 von 1
Bildfehler bei hochgeladenen Bildern
Verfasst: 23. April 2010 15:11
von user37337
Hallo,
ich habe ein sehr merkwürdiges Problem beim speichern von Bildern.
Das Problem tritt bei mir nicht auf (Windows 7), sondern nur bei einem Kunden (irgendeine Windows Server Version) deshalb kann ich es nicht selbst testen.
Ich ändere ein Bild vom Typ QPixmap und lade es direkt per FTP hoch:
Code: Alles auswählen
QByteArray bytes;
QBuffer buffer(&bytes);
buffer.open(QIODevice::ReadWrite);
image.save(&buffer, "JPG", 60);
ftp.put(bytes, filename);
Bei mir kommt das Bild heil auf dem Server an. Bei meinem Kunden sieht es aus wie das Bild im Anhang.
Vielleicht habt ihr eine Idee warum das so aussieht.
Verfasst: 23. April 2010 15:21
von Curtis Newton
Sowas wie binär/asciimodus?
Wie solls denn aussehen?
C.
Verfasst: 23. April 2010 15:35
von user37337
Die Methode put verwendet den Binärmodus wenn man nix anderes angibt. Das sind Produktbilder mit weißem Hintergrund. Die werden heruntergeladen etwas skaliert und auf die richtige Größe beschnitten und per FTP hochgeladen. Zwischendurch werden die Bilder im Programm angezeigt. Die Anzeige der Bilder ist richtig. Nur auf dem FTP-Server kommen Sie nicht richtig an. Kurioserweise passiert das nur bei meinem Kunden.
Verfasst: 23. April 2010 18:09
von Christian81
Vielleicht buffer.close() ?
Verfasst: 23. April 2010 19:59
von user37337
Wie gesagt kann ich es nicht selbst testen, aber ich kann mir nicht vorstellen, dass es an dem close() liegen kann. Es muss ja auch irgendwas mit den unterschiedlichen Rechnern zu tun haben. Eventuell fehlende .dll's habe ich schon überprüft. Ich habe den Ordner imageformats aus dem plugins ordner komplett mitgeliefert. Ich habe es auch auf einem eigenen anderen Rechner getestet und da funktioniert es auch.
Verfasst: 26. April 2010 12:49
von user37337
Ich habe gerade eine Rückmeldung von meinem Kunden erhalten, dass das Problem auch lokal auftritt. Und sowohl auf einem Windows Server System als auch auf einem Windows XP. Somit kommt nur noch eine Zeile im Code als Fehler in Betracht:
Kann sich jemand vorstellen woran das liegen könnte? Ich bin damit überfordert...
Verfasst: 26. April 2010 14:39
von user37337
Das Thema hat sich erledigt. Anscheinend war ein image.load(...) das Problem. Und die automatische Wahl des Bildformat hat qt nicht hinbekommen.
Verfasst: 26. April 2010 15:14
von kater
Also habt ihr das Programm so geändert, dass es nur JPG laden kann?
Verfasst: 26. April 2010 16:00
von user37337
Nein ich hatte es vorher etwa umständlich zwischengespeichert als QByteArray. Und das laden daraus in ein QPixmap hat anscheinend nicht geklappt. Jetzt habe ich das alles vereinfacht und nur noch als QPixmap abgespeichert.