Imagick::exportImagePixels

(PECL imagick 2 >=2.3.0, PECL imagick 3)

Imagick::exportImagePixels导出原始图像像素

描述

public Imagick::exportImagePixels(
    int $x,
    int $y,
    int $width,
    int $height,
    string $map,
    int $STORAGE
): array

将图像像素导出到数组中。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)
}

添加注释

用户贡献注释 1 个注释

P S
2 年前
以下是 map 的字母

R = 红色
G = 绿色
B = 蓝色
A = alpha (0 为透明)
O = alpha (0 为不透明)
C = 青色
Y = 黄色
M = 洋红色
K = 黑色
I = 强度 (用于灰度)
P = 填充
To Top