Using imagemagick montage with PHP

<?php

$sources = array(
‘red.png’,
‘green.png’,
‘blue.png’,
‘orange.png’
);

$stack = new Imagick();
foreach( $sources as $source ) {
$stack->addImage(new Imagick($source));
}

$montage = $stack->montageImage(new ImagickDraw(), ‘2×2’, ‘500×300’, 0, ‘0’);
$montage->writeImage(‘out.png’);

 

try{

$im = new Imagick();
//$imgs = glob(‘img/*-.jpg’);
foreach( $local_img as $source ) {
$thumb = new Imagick($source);
$thumb->thumbnailImage(600,0);
$im->addImage($thumb);

}
$out = $im->montageImage(new ImagickDraw(),’1x’,’600+0+0′,0,’0′);

$out->writeImage($new_img);
$im->destroy();
$out->destroy();

return str_replace(ABSPATH,home_url(‘/’),$new_img);
}catch (Exception $ex){
//print_r($ex);

$this->info(“Exception”,$ex->getMessage(),$ex->getCode());
}

 

size General description (actual behavior can vary for different options and settings)
scale% Height and width both scaled by specified percentage.
scale-x%xscale-y% Height and width individually scaled by specified percentages. (Only one % symbol needed.)
width Width given, height automagically selected to preserve aspect ratio.
xheight Height given, width automagically selected to preserve aspect ratio.
widthxheight Maximum values of height and width given, aspect ratio preserved.
widthxheight^ Minimum values of width and height given, aspect ratio preserved.
widthxheight! Width and height emphatically given, original aspect ratio ignored.
widthxheight> Shrinks an image with dimension(s) larger than the corresponding width and/or height argument(s).
widthxheight< Enlarges an image with dimension(s) smaller than the corresponding width and/or heightargument(s).
area@ Resize image to have specified area in pixels. Aspect ratio is preserved.
{size}{offset} Specifying the offset (default is +0+0). Below, {size} refers to any of the forms above.
{size}{+-}x{+-}y Horizontal and vertical offsets x and y, specified in pixels. Signs are required for both. Offsets are affected by ‑gravity setting. Offsets are not affected by % or other size operators.

imagemagick montage usage

imagemagick command geometry