2012-11-23 45 views
1

有時imagecolorat()會返回0,並在我要分析的PNG中顯示一些像素。這是爲什麼?php imagecolorat returns 0.爲什麼?

我看了像素,顏色真的是#111111。所以它應該返回1118481.對嗎?

我嘗試使用imagealphablending($ IMG,真正的),但我仍然得到0

謝謝!

$img = @imagecreatefrompng($png); 

if(!$img){ 
throw new Exception("Error loading PNG."); 
} 
var_dump(imagecolorat($img, 37, 625)); 

結果:

int 0 
+2

你能給我們一些代碼嗎? –

+0

@Ninsuo我加了一部分代碼。 –

回答

2

如果圖像被正確地裝載,你會得到0,則它意味着顏色爲純黑色(RGB = 000000 => 0)

+0

是的。你是對的...嗯 –

+0

隨時接受答案然後:) –

+0

謝謝,我看着錯誤的像素。 –

0

,因爲這是彩色(紅色= 0,綠色= 0,藍色= 0)

如果你嘗試它的大多數其他像素,你會得到16777215(0xFFFFFF),這是白色(紅色= 255,綠色= 255,藍色= 255)。

0

或者顏色是黑色的,或者我認爲圖像加載不正確。至少不是你所舉的例子。也許@隱藏了未加載圖像的錯誤。它的url重定向到另一個,在這種情況下,你應該使用類似CURL的東西來找到真實的圖像。