Делаю обработку изображений, разделяю на кусочки. После всех манипуляций размер файла изображения в разы больше, чем исходный.
$pieces = 2; // или 3
$picture = new Imagick('./test.jpg');
$picture_width = $picture->getImageWidth();
$picture_height = $picture->getImageHeight();
$gap = 20;
$piece_width = intval($picture_width / $pieces);
$canvas = new Imagick();
$canvas->newImage($picture_width + $gap * ($pieces - 1), $picture_height, 'none');
$picture->cropImage($piece_width, $picture_height, 0, 0);
$canvas->compositeImage($picture, Imagick::COMPOSITE_ADD, 0, 0 );
for ($i = 1; $i < $pieces; $i++) {
$piece = new Imagick('./test.jpg');
$piece->cropImage($piece_width, $picture_height, $piece_width * $i, 0);
$canvas->compositeImage($piece, Imagick::COMPOSITE_ADD, $gap * $i + $piece_width * $i, 0 );
}
$canvas->setImageFormat('png');
header("Content-Type: image/png");
echo $canvas;
die;
Исходное изображение - 393KB
Результаты по 1.5MB!