提示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笔记之:php函数range() round()和list()的使用说明
Apr 26 PHP
php实例分享之html转为rtf格式
Jun 02 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
Aug 18 PHP
PHP会话控制:Session与Cookie详解
Sep 27 PHP
php实现专业获取网站SEO信息类实例
Apr 02 PHP
解读PHP中的垃圾回收机制
Aug 10 PHP
thinkPHP下ueditor的使用方法详解
Dec 26 PHP
joomla数据库操作示例代码
Jan 06 PHP
php的laravel框架快速集成微信登录的方法
Dec 12 PHP
php文件上传及下载附带显示文件及目录功能
Apr 27 PHP
PHP数据库编程之MySQL优化策略概述
Aug 16 PHP
在thinkphp5.0路径中实现去除index.php的方式
Oct 16 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获取地址栏信息的代码
2008/10/08 PHP
PHP简单判断手机设备的方法
2016/08/23 PHP
jquery异步调用页面后台方法‏(asp.net)
2011/03/01 Javascript
基于jquery异步传输json数据格式实例代码
2013/11/23 Javascript
js跳转页面方法实现汇总
2014/02/11 Javascript
JavaScript基础语法、dom操作树及document对象
2014/12/02 Javascript
jQuery中fadeOut()方法用法实例
2014/12/24 Javascript
JS控制网页动态生成任意行列数表格的方法
2015/03/09 Javascript
jquery利用命名空间移除绑定事件的方法
2015/03/11 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
浅谈js中的延迟执行和定时执行
2016/05/31 Javascript
Bootstrap中文本框的宽度变窄并且加入一副验证码图片的实现方法
2016/06/23 Javascript
js获取上传文件的绝对路径实现方法
2016/08/02 Javascript
jQuery插件easyUI实现通过JS显示Dialog的方法
2016/09/16 Javascript
js实现上传图片预览方法
2016/10/25 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
webpack配置之后端渲染详解
2017/10/26 Javascript
一步步教你利用webpack如何搭一个vue脚手架(超详细讲解和注释)
2018/01/08 Javascript
原生js实现获取form表单数据代码实例
2019/03/27 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
2019/09/10 jQuery
JavaScript隐式类型转换代码实例
2020/05/29 Javascript
Python中函数的参数传递与可变长参数介绍
2015/06/30 Python
在Django框架中运行Python应用全攻略
2015/07/17 Python
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
python实现复制大量文件功能
2019/08/31 Python
Python中url标签使用知识点总结
2020/01/16 Python
美国非常受欢迎的Spa品牌:Bliss必列斯
2018/04/10 全球购物
如何找出EMP表里面SALARY第N高的employee
2013/12/05 面试题
自荐信模版
2013/10/24 职场文书
yy婚礼主持词
2014/03/14 职场文书
党员政治学习材料
2014/05/14 职场文书
小学音乐课歌曲《堆雪人》教学反思
2016/02/18 职场文书
详解nginx进程锁的实现
2021/06/14 Servers
PHP RabbitMQ消息列队
2022/05/11 PHP
详解SQL报错盲注
2022/07/23 SQL Server
win10搭建配置ftp服务器的方法
2022/08/05 Servers