thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印
2016-11-28 23:15
519 查看
今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印。博主是新手,在这里卡住了很久(>_<)
thinkphp 3.2.3整合ueditor 1.4 下载地址:https://github.com/Nintendov/Ueditor-thinkphp
下载下来,看着配置就可以了。
下面就是给上传图片加水印: (在做这步前,请确保ueditor已经正常工作)
我的工程目录如下:
fonts里面的fz.fft为水印字体
images里面的logo.png为水印图片
上传的图片储存在 Upload/lmage文件夹里
下面添加水印的时候需要用到这些文件的路径。
下面,打开Ueditor.class.php 类 文件在ThinkPHP -> Library -> Org-> Util 里面,就是你导入的Ueditor.class.php类文件
定位到这个方法:
主要在红框里面添加几行代码, 它这里是直接返回上传的文件,我们要在这里添加水印再让它返回。
修改代码如下:
就添加这么4行代码,原来的代码没有修改。
完成如下:
遇到的问题:不存在的图像文件
这是由于文件的地址获取有误造成的,我也在这里弄的很久,上面的$path 获取路径前面要加" ./ " 才能正常访问。(不要问我为什么~)
ueditor 上传图片按钮点击有几秒的延迟问题,已经有大神解决这个问题了
http://www.cnblogs.com/liangjiang/p/5799984.html
完成,博主亲测可用~ (>_<)
thinkphp 3.2.3整合ueditor 1.4 下载地址:https://github.com/Nintendov/Ueditor-thinkphp
下载下来,看着配置就可以了。
下面就是给上传图片加水印: (在做这步前,请确保ueditor已经正常工作)
我的工程目录如下:
fonts里面的fz.fft为水印字体
images里面的logo.png为水印图片
上传的图片储存在 Upload/lmage文件夹里
下面添加水印的时候需要用到这些文件的路径。
下面,打开Ueditor.class.php 类 文件在ThinkPHP -> Library -> Org-> Util 里面,就是你导入的Ueditor.class.php类文件
定位到这个方法:
主要在红框里面添加几行代码, 它这里是直接返回上传的文件,我们要在这里添加水印再让它返回。
修改代码如下:
/** * 上传文件方法 * */ private function uploadFile($config,$fieldName){ $upload = new \Think\Upload(); $upload->maxSize = $config['maxSize'] ;// 设置附件上传大小 $upload->exts = $this->format_exts($config['allowFiles']);// 设置附件上传类型 $upload->rootPath = '.'.$this->rootpath; // 设置附件上传根目录 $upload->autoSub = false; $upload->savePath = $this->getFullPath($config['pathFormat']); // 设置附件上传(子)目录 $info=$upload->uploadOne($_FILES[$fieldName]); $rootpath = $this->rootpath; if(!$info){ $data = array( "state"=>$upload -> getError(), ); }else{ //-----------------这里是新加的处理水印的代码 begin------------------------// $path = './'.$rootpath.$info['savepath'].$info['savename']; $image = new \Think\Image(); //添加文字水印 $image->open($path)->text('ThinkPHP','./Public/fonts/fz.TTF',20,'#ff0000',\Think\Image::IMAGE_WATER_SOUTHEAST)->save($path); //添加图片水印 //$image->open($path)->water('./Public/images/logo.png',\Think\Image::IMAGE_WATER_NORTHWEST)->save($path); //--------------------------------end----------------------------// $data = array( 'state'=>"SUCCESS", 'url'=>\Vin\FileStorage::getPath($rootpath,$info['savepath'].$info['savename']), 'title'=>$info['savename'], 'original'=>$info['name'], 'type'=>'.' . $info['ext'], 'size'=>$info['size'], ); } return json_encode($data); }
就添加这么4行代码,原来的代码没有修改。
完成如下:
遇到的问题:不存在的图像文件
这是由于文件的地址获取有误造成的,我也在这里弄的很久,上面的$path 获取路径前面要加" ./ " 才能正常访问。(不要问我为什么~)
ueditor 上传图片按钮点击有几秒的延迟问题,已经有大神解决这个问题了
http://www.cnblogs.com/liangjiang/p/5799984.html
完成,博主亲测可用~ (>_<)
相关文章推荐
- thinkphp3.2.3 ueditor1.4.3 图片上传操作,在线删除上传图片功能。
- thinkphp3.2.3 ueditor1.4.3 图片上传操作,在线删除上传图片功能。
- thinkphp5整合最新ueditor,支持图片加水印
- Ueditor 1.4.3.1 使用 ThinkPHP 3.2.3 的上传类进行图片上传
- dedecms整合百度编辑器(Ueditor)之上传图片加水印的办法
- phpcms V9.6.0版本整合百度ueditor1.4.3.2,包括水图片上传水印
- Tp3.2.3 整合 百度Ueditor1.4.3.3 图片上传功能
- ThinkPHP3.1.3 整合 UEditor百度编辑器 图片上传
- thinkphp整合ueditor上传功能
- ueditor编辑器图片上传添加水印-jsp版本
- Thinkphp3.2.3 ----后台----图片上传相应处理
- Thinkphp3.2.3 ----后台----图片上传相应处理
- Thinkphp3.2.3 ----后台----图片上传相应处理
- 为百度UEDITOR编辑器上传图片添加水印
- ThinkPHP自动化为已经上传的图片添加「 响应式」水印(数据库字段部分)
- Thinkphp3.2.3 ----后台----图片上传相应处理
- 在OneThink(ThinkPHP3.2.3)中整合阿里云OSS的PHP-SDK2.0.4,实现Web端直传,服务端签名直传并设置上传回调的实现流程
- Thinkphp3.2.3 ----后台----图片上传相应处理
- Thinkphp3.2.3 ----后台----图片上传相应处理
- ThinkPHP自动化为已经上传的图片添加「 响应式」水印(文件夹遍历部分)