getExt should not use Imagick format, mapping ext and mime type is more accurate.

This commit is contained in:
Domovoy 2012-07-22 16:19:35 +02:00
parent 83075c2f27
commit ab484ebc76

View file

@ -4,7 +4,6 @@ if(! class_exists("Photo")) {
class Photo { class Photo {
private $image; private $image;
private $ext;
/** /**
* Put back gd stuff, not everybody have Imagick * Put back gd stuff, not everybody have Imagick
@ -41,6 +40,7 @@ class Photo {
public function __construct($data, $type=null) { public function __construct($data, $type=null) {
$this->imagick = class_exists('Imagick'); $this->imagick = class_exists('Imagick');
$this->types = $this->supportedTypes();
if($this->is_imagick()) { if($this->is_imagick()) {
$this->image = new Imagick(); $this->image = new Imagick();
@ -54,10 +54,7 @@ class Photo {
// If it is a gif, it may be animated, get it ready for any future operations // If it is a gif, it may be animated, get it ready for any future operations
if($this->image->getFormat() !== "GIF") $this->image = $this->image->coalesceImages(); if($this->image->getFormat() !== "GIF") $this->image = $this->image->coalesceImages();
$this->ext = strtolower($this->image->getImageFormat());
} else { } else {
$this->types = $this->supportedTypes();
if (!array_key_exists($type,$this->types)){ if (!array_key_exists($type,$this->types)){
$type='image/jpeg'; $type='image/jpeg';
} }
@ -139,9 +136,7 @@ class Photo {
if(!$this->is_valid()) if(!$this->is_valid())
return FALSE; return FALSE;
if($this->is_imagick()) return $this->types[$this->getType()];
return $this->ext;
return $this->types[$this->type];
} }
public function scaleImage($max) { public function scaleImage($max) {