如何在php codeigniter中修改插件?

时间:2015-01-21 05:27:08

标签: php codeigniter

我已经尝试调整croppic插件来剪切图像,有两个文件变成了librares,但我无法将参数传递给lib,插件是https://github.com/sconsult/croppic,我的代码是这样的; < / p>

控制器

public function cropimg() {

if($_POST) {
    $imgUrl = $_POST['imgUrl'];
    $imgInitW = $_POST['imgInitW'];
    $imgInitH = $_POST['imgInitH'];
    $imgW = $_POST['imgW'];
    $imgH = $_POST['imgH'];
    $imgY1 = $_POST['imgY1'];
    $imgX1 = $_POST['imgX1'];
    $cropW = $_POST['cropW'];
    $cropH = $_POST['cropH']; 
}

$this->cropfile->imgCrop($imgUrl, $imgInitW, $imgInitH, $imgW, $imgH, $imgY1, $imgX1, $cropW, $cropH);

}

class CropFile {

public function imgCrop($imgUrl, $imgInitW, $imgInitH, $imgW, $imgH, $imgY1, $imgX1, $cropW, $cropH)
{
    $CI =& get_instance();
    $CI->load->helper('url');
    $CI->load->library('session');
    $CI->config->item('base_url');


    $jpeg_quality = 100;

    $output_filename = base_url() . "public/croppedImg_".rand();

    $what = getimagesize($imgUrl);
    switch(strtolower($what['mime']))
    {
        case 'image/png':
            $img_r = imagecreatefrompng($imgUrl);
            $source_image = imagecreatefrompng($imgUrl);
            $type = '.png';
            break;
        case 'image/jpeg':
            $img_r = imagecreatefromjpeg($imgUrl);
            $source_image = imagecreatefromjpeg($imgUrl);
            $type = '.jpeg';
            break;
        case 'image/gif':
            $img_r = imagecreatefromgif($imgUrl);
            $source_image = imagecreatefromgif($imgUrl);
            $type = '.gif';
            break;
        default: die('image type not supported');
    }

        $resizedImage = imagecreatetruecolor($imgW, $imgH);
        imagecopyresampled($resizedImage, $source_image, 0, 0, 0, 0, $imgW, 
                    $imgH, $imgInitW, $imgInitH);   


        $dest_image = imagecreatetruecolor($cropW, $cropH);
        imagecopyresampled($dest_image, $resizedImage, 0, 0, $imgX1, $imgY1, $cropW, 
                    $cropH, $cropW, $cropH);    


        imagejpeg($dest_image, $output_filename.$type, $jpeg_quality);

        $response = array(
                "status" => 'success',
                "url" => $output_filename.$type 
              );
         print json_encode($response);

}

0 个答案:

没有答案