提示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 已经成熟
Dec 04 PHP
php 运行效率总结(提示程序速度)
Nov 26 PHP
微盾PHP脚本加密专家php解密算法
Sep 13 PHP
色色整理的PHP面试题集锦
Mar 08 PHP
php中使用临时表查询数据的一个例子
Feb 03 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
Jun 29 PHP
php判断当前用户已在别处登录的方法
Jan 06 PHP
PHP curl CURLOPT_RETURNTRANSFER参数的作用使用实例
Feb 07 PHP
php实现只保留mysql中最新1000条记录
Jun 18 PHP
thinkPHP3.1验证码的简单实现方法
Apr 22 PHP
PHP中Array相关函数简介
Jul 03 PHP
PHP实现的多维数组去重操作示例
Jul 21 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递归算法的详细示例分析
2013/02/19 PHP
java script编程起步(第三课)
2007/01/10 Javascript
实例:用 JavaScript 来操作字符串(一些字符串函数)
2007/02/15 Javascript
基于JQuery的6个Tab选项卡插件
2010/09/03 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
2012/02/27 Javascript
JavaScript执行顺序详细介绍
2013/12/04 Javascript
js语法学习之判断一个对象是否为数组
2014/05/13 Javascript
JS实现仿FLASH效果的竖排导航代码
2015/09/15 Javascript
基于zepto的移动端轻量级日期插件--date_picker
2016/03/04 Javascript
深入剖析javascript中的exec与match方法
2016/05/18 Javascript
详解获取jq ul第一个li定位的四种解决方案
2016/11/23 Javascript
原生js实现可拖动的登录框效果
2017/01/21 Javascript
jQuery.form.js的使用详解
2017/06/14 jQuery
客户端(vue框架)与服务器(koa框架)通信及服务器跨域配置详解
2017/08/26 Javascript
vue-router传参用法详解
2019/01/19 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
详解搭建一个vue-cli的移动端H5开发模板
2020/01/17 Javascript
JavaScript碰撞检测原理及其实现代码
2020/03/12 Javascript
解决新建一个vue项目过程中遇到的问题
2020/10/22 Javascript
Python爬虫利用cookie实现模拟登陆实例详解
2017/01/12 Python
用python处理图片实现图像中的像素访问
2018/05/04 Python
matplotlib 纵坐标轴显示数据值的实例
2018/05/25 Python
Python设计模式之职责链模式原理与用法实例分析
2019/01/11 Python
Django实现单用户登录的方法示例
2019/03/28 Python
python3.5安装python3-tk详解
2019/04/26 Python
Python 在OpenCV里实现仿射变换—坐标变换效果
2019/08/30 Python
pycharm显示远程图片的实现
2019/11/04 Python
HTML5表格_动力节点Java学院整理
2017/07/11 HTML / CSS
史蒂夫·马登加拿大官网:Steve Madden加拿大
2017/11/18 全球购物
英国最大线上综合鞋类商城:Office
2017/12/08 全球购物
UDP协议功能
2013/01/06 面试题
学生个人求职自荐信格式
2013/09/23 职场文书
《两个铁球同时着地》教学反思
2014/02/13 职场文书
留学生求职信
2014/06/03 职场文书
2015年信息技术教研组工作总结
2015/07/22 职场文书
2015年学校消防安全工作总结
2015/10/14 职场文书