【问题标题】:How to fix image width in ckeditor while uploading the image?上传图片时如何在ckeditor中修复图片宽度?
【发布时间】:2012-10-18 06:11:08
【问题描述】:

我在我的网站上使用 ckeditor。在将图像从本地系统上传到服务器时,我想修复上传图像的宽度和高度。

【问题讨论】:

    标签: php ckeditor


    【解决方案1】:

    至少有两种方法可以解决:

    1. 创建自定义上传脚本,它将“上传”您的图像并修复 w&h 参数。 Documentation with examples here. 还有一些代码:

    在 HTML 中:

    <pre>
        CKEDITOR.replace( 'editor1',
            {
                 filebrowserImageUploadUrl: '/uploader/upload.php'
            });
    </pre>  
    

    在 /uploader/upload.php 中:

    <pre>
    function resizeImage($file, $filename, $newwidth = 800, $newheight = 600)
    {       
        $type = substr($file,strrpos($file,".")+1);
    
        switch($type) 
        {
            case 'jpg':
                $src = imagecreatefromjpeg($file);
                break;
            case 'jpeg':
                $src = imagecreatefromjpeg($file);
                break;
            case 'gif':
                $src = imagecreatefromgif($file);
                break;
            case 'png':
                $src = imagecreatefrompng($file);
                break;
            default:
                $src = imagecreatefromjpeg($file);
                break;
        }
    
        list($width,$height)=getimagesize($file);
        $tmp=imagecreatetruecolor($newwidth,$newheight);
        imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);
    
        switch($type) {
            case 'jpg':
                imagejpeg($tmp,$filename,100);
                break;
            case 'jpeg':
                imagejpeg($tmp,$filename,100);
                break;
            case 'gif':
                imagegif($tmp,$filename,100);
                break;
            case 'png':
                imagepng($tmp,$filename,9);
                break;
            case 'wbm':
                imagewbmp($tmp,$filename,100);
                break;
            default:
                imagejpeg($tmp,$filename,100);
                break;
        }
        imagedestroy($src);
        imagedestroy($tmp);
        return true;
    }
    
    $img = resizeImage($_FILES['file']['tmp_name'], $_FILES['file']['name'], $newwidth = 800, $newheight = 600);
    </pre>
    

    附言有用于搜索查询“php image resize”等的脚本音调。

    2. 使用一些 CKeditor 模式。这是解决方案:another stackoverflow question

    【讨论】:

      猜你喜欢
      • 2015-04-23
      • 1970-01-01
      • 1970-01-01
      • 2010-11-30
      • 2019-07-16
      • 2020-06-07
      • 2013-06-05
      • 2011-01-08
      • 1970-01-01
      相关资源
      最近更新 更多