Page 1 sur 1

Ecriture de JPG qui perdent leurs couleurs, pas les PNG

Posté : 24 juin 2009, 10:44
par Bernard777
Bonjour,

Dans mon application java, je convertis un BufferedImage en JPG, j'encode en base64, j'envoie au serveur, le php le récupère et l'écrit dans un fichier: les couleurs sont modifiées.

Avec une image PNG ça marche parfaitement.
if ( $photo!=null ){
    $ourFileName = $this->getPathForPhoto($entryuniqueid,$entryname);
    $ourFileHandle = fopen($ourFileName, 'wb');
    fwrite( $ourFileHandle, base64_decode($photo) );
    fclose($ourFileHandle);
}
D'où vient l'erreur svp?

Merci.

Posté : 24 juin 2009, 11:05
par albat
Un tuto en vidéo pour éviter ça...

En fait, je sais pas, mais avoue que ça détend... ;)

Posté : 24 juin 2009, 12:38
par Bernard777
Quelqu'un peut-il m'aider sérieusement svp :)

résolu

Posté : 24 juin 2009, 13:51
par Bernard777
Désolé pour la pollution, ce n'est pas un bug PHP mais JAVA / JPEG group.

Au cas où ça vous arriverait, sachez que les images JPG qui subissent un redimensionnement via l'opération AffineTransform ne peuvent pas utiliser le filtrage Bilinear si vous comptez les réexporter dans un fichier JPG. Si c'est pour une utilisation directe dans l'application vous pouvez bien sûr.

Customer Workaround:
Only scale BufferedImages using AffineTransformOp.TYPE_NEAREST_NEIGHBOR.

Posté : 24 juin 2009, 15:50
par albat
Quelqu'un peut-il m'aider sérieusement svp :)
J'aurais eu beaucoup de mal à aller au-delà de ma première réponse. :shock:
J'espère que tu n'es pas trop déçu... :oops: