當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP Imagick 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常數的列表如下:

  • imagick::MONTAGEMODE_FRAME(1)
  • imagick::MONTAGEMODE_UNFRAME(2)
  • imagick::MONTAGEMODE_CONCATENATE(3)

返回值:成功時,此函數返回一個新的Imagick對象。

異常:該函數在錯誤時引發ImagickException。

以下示例程序旨在說明PHP中的Imagick::montageImage()函數:

程序1:

<?php 
  
// Create a new Imagick object 
$imagick = new Imagick( 
'https://media.geeksforgeeks.org/wp-content/uploads/geeksforgeeks-13.png'); 
  
// Create a montage 
$result = $imagick->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(); 
?>

輸出:

程序2:

<?php 
  
// Create a new Imagick object 
$imagick = new Imagick(); 
  
// Create a new Image with label 
$imagick->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



相關用法


注:本文由純淨天空篩選整理自gurrrung大神的英文原創作品 PHP | Imagick montageImage() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。