提示Trying to clone an uncloneable object of class Imagic的解决


Posted in PHP onOctober 27, 2011

使用网上流传的一个程序实现pdf截图为png,需要使用Imagic扩展。在windows下安装完后提示:
Fatal error: Trying to clone an uncloneable object of class Imagick in C:\www\hx\pdf_to_png.php on line 17

使用IIS和Apache均会有这个提示。经多次测试后,发现两种解决方法:

1.php.ini中; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
zend.ze1_compatibility_mode = Off

默认是On,改为Off后,即可解决。

2.使用imagick::...这种方法调用。
即$im->setResolution(120, 120);可以改写为:
imagick::setResolution(120, 120);

如果其它扩展出现这类错误,一般也是可以使用这两种方法解决的。

附pdf转png的程序代码片断:

function pdf2png($pdf, $filename, $page=0) { 
if (!extension_loaded('imagick')) { 
exit('no imagick'); 
return false; 
} 
if (!file_exists($pdf)) { 
return false; 
} 
$im = new Imagick(); 
$im->setResolution(120, 120); 
$im->setCompressionQuality(100); 
$im->readImage($pdf . "[" . $page . "]"); 
$im->setImageFormat('png'); 
$im->writeImage($filename); 
$im->readImage($filename); 
$im->resizeImage(120, 150, Imagick::FILTER_LANCZOS, 1); 
$im->writeImage($filename); 
return $filename; 
}
PHP 相关文章推荐
php中获取远程客户端的真实ip地址的方法
Aug 03 PHP
调试一段PHP程序时遇到的三个问题
Jan 17 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
Jun 21 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
Apr 18 PHP
采用ThinkPHP中F方法实现快速缓存实例
Jun 13 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
Jul 04 PHP
php实现curl模拟ftp上传的方法
Jul 29 PHP
PHP制作用户注册系统
Oct 23 PHP
PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
Mar 21 PHP
PHP预定义超全局数组变量小结
Aug 20 PHP
PHP get_html_translation_table()函数用法讲解
Feb 16 PHP
PHP观察者模式定义与用法实例分析
Mar 22 PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 #PHP
Session保存到数据库的php类分享
Oct 24 #PHP
php中批量修改文件后缀名的函数代码
Oct 23 #PHP
基于Snoopy的PHP近似完美获取网站编码的代码
Oct 23 #PHP
php中经典方法实现判断多维数组是否为空
Oct 23 #PHP
PHP禁止页面缓存的代码
Oct 23 #PHP
Pain 全世界最小最简单的PHP模板引擎 (普通版)
Oct 23 #PHP
You might like
PHP通过正则表达式下载图片到本地的实现代码
2011/09/19 PHP
php判断终端是手机还是电脑访问网站的思路及代码
2013/04/24 PHP
PHP编码规范的深入探讨
2013/06/06 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
filemanage功能中用到的common.js
2007/04/08 Javascript
jquery 打开窗口返回值实现代码
2010/03/04 Javascript
iframe子页面获取父页面元素的方法
2013/11/05 Javascript
AngularJs实现ng1.3+表单验证
2015/12/10 Javascript
JS显示日历和天气的方法
2016/03/01 Javascript
node.js从数据库获取数据
2016/05/08 Javascript
javascript设置文本框光标的方法实例小结
2016/11/04 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
WebPack基础知识详解
2017/01/16 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
2017/04/25 Javascript
Vue之Watcher源码解析(1)
2017/07/19 Javascript
使用Node搭建reactSSR服务端渲染架构
2018/08/30 Javascript
JS实现随机抽选获奖者
2019/11/07 Javascript
Python切片工具pillow用法示例
2018/03/30 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
django框架使用方法详解
2019/07/18 Python
python使用 cx_Oracle 模块进行查询操作示例
2019/11/28 Python
python3实现从kafka获取数据,并解析为json格式,写入到mysql中
2019/12/23 Python
python随机生成大小写字母数字混合密码(仅20行代码)
2020/02/01 Python
Python 序列化和反序列化库 MarshMallow 的用法实例代码
2020/02/25 Python
iPython pylab模式启动方式
2020/04/24 Python
Django 5种类型Session使用方法解析
2020/04/29 Python
python实现爱奇艺登陆密码RSA加密的方法示例详解
2020/05/27 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
使用CSS3实现圆角,阴影,透明
2014/12/23 HTML / CSS
联想法国官方网站:Lenovo法国
2018/10/18 全球购物
馥绿德雅美国官方网站:Rene Furterer头皮护理专家
2019/05/01 全球购物
意大利在线大学图书馆:Libreria universitaria
2019/07/16 全球购物
大学生活学习的自我评价
2013/12/03 职场文书
小学生作文评语
2014/04/18 职场文书
社区爱国卫生月活动总结
2014/06/30 职场文书
教你使用Python获取QQ音乐某个歌手的歌单
2022/04/03 Python