以下是 map 的字母
R = 紅色
G = 綠色
B = 藍色
A = alpha(0 是透明)
O = alpha(0 是不透明)
C = 青色
Y = 黃色
M = 洋紅色
K = 黑色
I = 強度(用於灰階)
P = 補白
(PECL imagick 2 >=2.3.0, PECL imagick 3)
Imagick::exportImagePixels — 匯出原始影像像素
$x
,$y
,$width
,$height
,$map
,$STORAGE
將影像像素匯出至陣列。map 定義匯出像素的順序。傳回陣列的大小為 width * height * strlen(map)
。如果 Imagick 是針對 ImageMagick 6.4.7 或更新版本編譯的,則可以使用此方法。
x
匯出區域的 X 座標
y
匯出區域的 Y 座標
width
匯出區域的寬度
height
匯出區域的高度
map
匯出像素的順序。例如 "RGB"
。map 的有效字元為 R、G、B、A、O、C、Y、M、K、I 和 P。
STORAGE
請參考此 像素型別常數 列表
傳回包含像素值的陣列。
發生錯誤時拋出 ImagickException。
範例 1 使用 Imagick::exportImagePixels()
將影像像素匯出至陣列
<?php
/* 建立新物件 */
$im = new Imagick();
/* 建立新影像 */
$im->newPseudoImage(0, 0, "magick:rose");
/* 匯出影像像素 */
$pixels = $im->exportImagePixels(10, 10, 2, 2, "RGB", Imagick::PIXEL_CHAR);
/* 輸出 */
var_dump($pixels);
?>
以上範例會輸出
array(12) { [0]=> int(72) [1]=> int(64) [2]=> int(57) [3]=> int(69) [4]=> int(59) [5]=> int(43) [6]=> int(124) [7]=> int(120) [8]=> int(-96) [9]=> int(91) [10]=> int(84) [11]=> int(111) }