2016-02-18 39 views
0

以下代碼產生完全不同的圖像克隆。讓我告訴你: enter image description here克隆imagick物體 - 錯誤輸出

enter image description here

$image = 'image_input.jpg'; 
$im = new Imagick(); 

$im->pingimage($image); 
$im->readimage($image); 

$im_clone = clone $im; 

$im_clone->writeimage('image_output.jpg'); 
$im_clone->clear(); 
$im->clear(); 
+0

什麼版本的ImageMagick和PHP您使用的是? – phaberest

+0

另外,你有沒有嘗試引用輸入圖像的完整路徑? – phaberest

+0

它也使用完整路徑產生相同的輸出。 PHP版本:5.5.22 Imagick:3.4.0RC6 ImageMagick:6.9.0 – echosmile

回答

0

這正常工作與PHP 5.6:

<?php 
$image = new Imagick(); 
$image->readimage('input.jpg'); 

$im_clone = clone $image; 
$im_clone->writeimage('result.jpg'); 
?> 
+0

剛試過沒有$ image-> pingimage('put.jpg'),它**在PHP 5.5上效果不錯。顯然它是** Imagick :: pingimage()**方法,它以某種方式解決了結果。問題依然存在。 – echosmile

+0

爲什麼你想打電話呢?它只能讀取足夠的圖像來確定其大小。 –

+0

現在看了文檔後,我發現在我使用它的上下文中它是無用的。我這樣做,因爲我在某處讀到它的優點,但我看到那裏也有一些墮落的行爲。它一定是一個過時的來源。我會檢查這個對話作爲答案 - 也許它會像對我一樣打開別人的眼睛。 – echosmile