Ejemplo n.º 1
0
 /**
  * リサイズ
  */
 public function resize($fileName, $mimeType, $sizeType = 'normal')
 {
     // 画像のサイズを取得する。
     $imageSize = $this->sizes($fileName);
     // 画像の拡張性を設定スル。
     $mimeType = explode('/', $mimeType);
     App::uses('ImageResize', 'Vendor');
     // 切り抜きサイズを取得
     $resize = Configure::read('resize_info');
     $resize = $resize[$sizeType];
     //画像を幅100pxでリサイズして保存
     $newImgname = time() . rand(100000, 999999) . '.png';
     $thumb = new ImageResize($fileName, $mimeType[1]);
     $thumb->name($newImgname);
     if ($resize['height'] > $resize['width']) {
         $thumb->height($resize['height']);
     } else {
         $thumb->width($resize['width']);
     }
     $thumb->save();
     // サイズの中心から抜き取り。
     $tmp_dir = ini_get('upload_tmp_dir');
     if (empty($tmp_dir)) {
         $tmp_dir = '/tmp';
     }
     if ($resize['height'] != null) {
         $thumb = new ImageResize($tmp_dir . '/' . $newImgname, $mimeType[1]);
         $thumb->name($newImgname);
         $thumb->width($resize['width']);
         $thumb->height($resize['height']);
         $thumb->crop(0, 0);
         $thumb->save();
     }
     return $tmp_dir . '/' . $newImgname;
 }
Ejemplo n.º 2
0
function ResizeImage($x, $y, $imageurl)
{
    if ($x > 0 && $y > 0 && strlen($imageurl) > 3) {
        $data = parse_url(str_replace('/', '!', $imageurl));
        $newfilename = $data['scheme'] . '~' . $data['host'] . '~' . $x . '~' . $y . $data['path'];
        $newfilepath = 'temp/' . $newfilename;
        $newsavedfilepath = 'resized/' . $newfilename;
        $baseurl = 'http://futurestore.areality3d.com';
        if (!file_exists($newsavedfilepath)) {
            $handle = copy($imageurl, $newfilepath);
            $image = new ImageResize($newfilepath);
            $image->crop($x, $y);
            $image->save($newsavedfilepath);
            $newurl = $baseurl . '/' . $newsavedfilepath;
        } else {
            $newurl = $baseurl . '/' . $newsavedfilepath;
        }
        return $newurl;
    } else {
        return 'need x,y,imageurl';
    }
}