提示Trying to clone an uncloneable object of class Imagic的解決
更新時間:2011年10月27日 22:49:55 作者:
使用網(wǎng)上流傳的一個程序?qū)崿F(xiàn)pdf截圖為png,需要使用Imagic擴(kuò)展,安裝后出現(xiàn)Trying to clone an uncloneable object of class Imagic提示,下面是具體的解決方法分享。
使用網(wǎng)上流傳的一個程序?qū)崿F(xiàn)pdf截圖為png,需要使用Imagic擴(kuò)展。在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均會有這個提示。經(jīng)多次測試后,發(fā)現(xiàn)兩種解決方法:
1.php.ini中; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
zend.ze1_compatibility_mode = Off
默認(rèn)是On,改為Off后,即可解決。
2.使用imagick::...這種方法調(diào)用。
即$im->setResolution(120, 120);可以改寫為:
imagick::setResolution(120, 120);
如果其它擴(kuò)展出現(xiàn)這類錯誤,一般也是可以使用這兩種方法解決的。
附pdf轉(zhuǎn)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;
}
Fatal error: Trying to clone an uncloneable object of class Imagick in C:\www\hx\pdf_to_png.php on line 17
使用IIS和Apache均會有這個提示。經(jīng)多次測試后,發(fā)現(xiàn)兩種解決方法:
1.php.ini中; Enable compatibility mode with Zend Engine 1 (PHP 4.x)
zend.ze1_compatibility_mode = Off
默認(rèn)是On,改為Off后,即可解決。
2.使用imagick::...這種方法調(diào)用。
即$im->setResolution(120, 120);可以改寫為:
imagick::setResolution(120, 120);
如果其它擴(kuò)展出現(xiàn)這類錯誤,一般也是可以使用這兩種方法解決的。
附pdf轉(zhuǎn)png的程序代碼片斷:
復(fù)制代碼 代碼如下:
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;
}
相關(guān)文章
php中使用Imagick實現(xiàn)圖像直方圖的實現(xiàn)代碼
玩過單反相機(jī)的人應(yīng)該都知道圖像直方圖(Image Histogram),簡單點說,它通過計算每個色階在總像素中所占的比例來反映圖像的曝光情況。2011-08-08
PHP實現(xiàn)將科學(xué)計數(shù)法轉(zhuǎn)換為原始數(shù)字字符串的方法
這篇文章主要介紹了PHP實現(xiàn)將科學(xué)計數(shù)法轉(zhuǎn)換為原始數(shù)字字符串的方法,通過一個簡單的自定義函數(shù)使用正則替換實現(xiàn)該功能,是非常實用的技巧,需要的朋友可以參考下2014-12-12
使用systemd設(shè)置PHP程序為服務(wù)的配置步驟
在現(xiàn)代?Linux?系統(tǒng)中,systemd?是用于管理和控制服務(wù)的標(biāo)準(zhǔn)工具,通過?systemd,我們可以輕松地將?PHP?程序配置為后臺運(yùn)行的系統(tǒng)服務(wù),本文將介紹如何為?PHP?程序設(shè)置?systemd?服務(wù)單元,并涵蓋相關(guān)配置步驟,需要的朋友可以參考下2024-10-10

