메뉴 건너뛰기

Dev tips

    /**
     * 이미지 썸네일 처리
     * @param  [type] $fileName    [description]
     * @return [type]            [description]
     */
    public function makeThumb($filename)
    {
        $fileext = strpos($filename,'.')===false?'':substr(strrchr($filename, "."), 1);
        $filenameonly = substr($filename, 0, strlen($filename)-strlen($fileext)-1);
        $filepath = dirname(dirname(BASEPATH).'..')."/".SAVE_DIR_FILES;

        list($width, $height) = getimagesize($filename);

        $percent = 0.5;
        $new_width = 172; // $width * $percent; // 변경할 이미지 사이즈
        $new_height = 274; // $height * $percent; // 변경할 이미지 사이즈

        // Resample
        $image_p = imagecreatetruecolor($new_width, $new_height);

        switch(strtolower($fileext)){
            case "png":
                imagealphablending($image_p, FALSE);
                imagesavealpha($image_p, TRUE);
                $image = imagecreatefrompng($filename);
                break;
            case "gif":
                $image = imagecreatefromgif($filename);
                break;
            case "jpg":
            case "jpeg":
            default:
                $image = imagecreatefromjpeg($filename);
                break;
        }

        imagecopyresampled($image_p, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);

        $changeName = $filenameonly."_thumb.".$fileext;

        // Output
        switch(strtolower($fileext)){
            case "png":
                //$q = 9/100;
                //$quality = 100 * $q;
                //$quality = 100;
                $image = imagepng($image_p, $changeName);
                break;
            case "gif":
                $image = imagegif($image_p, $changeName);
                break;
            case "jpg":
            case "jpeg":
            default:
                $image = imagejpeg($image_p, $changeName);
                break;
        }
    }