Example #1
0
 /**
  * ファイル名から新規インスタンスを返す
  * @param string $filename
  * @return self
  */
 public static function load($filename)
 {
     if (!is_file($filename)) {
         throw new Image\ImageException('`' . $filename . '` file not found.');
     }
     $size = getimagesize($filename);
     if ($size === false) {
         throw new Image\ImageException('invalid file');
     }
     $self = new self(null, null);
     try {
         switch ($size[2]) {
             case IMAGETYPE_GIF:
                 $self->resource(imagecreatefromgif($filename), 'gif');
                 break;
             case IMAGETYPE_JPEG:
                 $self->resource(imagecreatefromjpeg($filename), 'jpg');
                 break;
             case IMAGETYPE_PNG:
                 $self->resource(imagecreatefrompng($filename), 'png');
                 break;
             case IMAGETYPE_WBMP:
                 $self->resource(imagecreatefromwbmp($filename), 'bmp');
                 break;
             default:
                 throw new Image\ImageException();
         }
     } catch (Image\ImageException $e) {
         throw new Image\ImageException('invalid data: ' . $size[2]);
     } catch (\Exception $e) {
         throw new Image\ImageException($e->getMessage());
     }
     return $self;
 }
Example #2
0
 /**
  * ファイル名から新規インスタンスを返す
  *
  * @param string $filename
  * @return Image
  */
 public static function load($filename)
 {
     $size = getimagesize($filename);
     if ($size === false) {
         throw new Exception("invalid data");
     }
     $self = new self();
     switch ($size[2]) {
         case IMAGETYPE_GIF:
             $self->resource(imagecreatefromgif($filename), IMAGETYPE_GIF);
             break;
         case IMAGETYPE_JPEG:
             $self->resource(imagecreatefromjpeg($filename), IMAGETYPE_JPEG);
             break;
         case IMAGETYPE_PNG:
             $self->resource(imagecreatefrompng($filename), IMAGETYPE_PNG);
             break;
         case IMAGETYPE_WBMP:
             $self->resource(imagecreatefromwbmp($filename), IMAGETYPE_WBMP);
             break;
         default:
             throw new Exception("invalid data");
     }
     return $self;
 }