📜  PHP |想象一下 montageImage()函数

📅  最后修改于: 2022-05-13 01:56:18.920000             🧑  作者: Mango

PHP |想象一下 montageImage()函数

Imagick::montageImage()函数是PHP中的一个内置函数,用于通过组合许多分离的图像来创建合成图像。此函数将图像合成为带有可选图像名称的图块形式。

句法:

Imagick Imagick::montageImage( ImagickDraw $draw, string $tile_geometry, 
                      string $thumbnail_geometry, int $mode, string $frame )

参数:该函数接受上面提到的五个参数,如下所述:

  • $draw:指定字体名称、大小和颜色。
  • $tile_geometry:它指定每行和每页的瓦片数。
  • $thumbnail_geometry:指定每个缩略图的首选图像大小和边框大小。
  • $mode:它包含一个对应于 MONTAGEMODE 常量之一的整数值。
  • $frame:它指定是否用装饰性边框包围图像。

下面给出了所有 MONTAGEMODE 常量的列表:

  • 想像::蒙太奇模式_帧 (1)
  • imagick::MONTAGEMODE_UNFRAME (2)
  • imagick::MONTAGEMODE_CONCATENATE (3)

返回值:此函数在成功时返回一个新的 Imagick 对象。

异常:此函数在出错时抛出 ImagickException。

下面的程序说明了PHP中的Imagick::montageImage()函数

方案一:

montageImage(new ImagickDraw(), '4x2',
        '150x100+2+2', imagick::MONTAGEMODE_UNFRAME, "2x2+3+3");
  
// Display the image
$result->setImageFormat('png');
header("Content-Type: image/png");
  
echo $result->getImageBlob();
?>

输出:

方案二:

newimage(1000, 800, 'green');
$imagick->labelImage('green');
  
// Add a new Image with label
$imagick->addImage(new imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'));
  
$imagick->labelImage('Image1');
  
// Add a new Image with label
$imagick->addImage(new imagick(
'https://media.geeksforgeeks.org/wp-content/uploads/20190918234528/colorize1.png'));
  
$imagick->labelImage('Image2');
  
// Create a new Image with label
$imagick->newimage(1000, 800, 'blue');
$imagick->labelImage('blue');
  
// Create a new Image with label
$imagick->newimage(1000, 800, 'violet');
$imagick->labelImage('violet');
  
// Create a new Image with label
$imagick->newimage(1000, 800, 'cyan');
$imagick->labelImage('cyan');
  
// Create a montage
$result = $imagick->montageImage(new ImagickDraw(), "3x2+0+0", 
     "200x160+3+3>", Imagick::MONTAGEMODE_CONCATENATE, "10x10+2+2");
  
// Display the image
$result->setImageFormat('png');
header("Content-Type: image/png");
  
echo $result->getImageBlob();
?>

输出:

参考: https://www. PHP.net/manual/en/imagick.montageimage。 PHP