Я хочу отображать изображение на три части в качестве триптиха с помощью библиотеки imagemagick PHP. Я видел тот же пример здесь
http://www.rubbleimages.com/Canvas.php .
Может ли кто-нибудь помочь мне по этому вопросу?
Я безнадежен в PHP, но что-то вроде этого, похоже, работает на меня:
#!/usr/local/bin/php -f <?php $padding=10; $info = getimagesize("input.jpg"); $width=$info[0]; $height=$info[1]; // Calculate dimensions of output image $canvasWidth=$width+4*$padding; $canvasHeight=$height+2*$padding; // create white canvas $output = imagecreatetruecolor($canvasWidth, $canvasHeight); $background = imagecolorallocate($output, 255, 255, 255); imagefill($output, 0, 0, $background); // read in original image $orig = imagecreatefromjpeg("input.jpg"); // copy left third to output image imagecopy($output, $orig,$padding, $padding, 0, 0, $width/3, $height); // copy central third to output image imagecopy($output, $orig,2*$padding+$width/3, $padding, $width/3, 0, $width/3, $height); // copy right third to output image imagecopy($output, $orig,3*$padding+2*$width/3,$padding, 2*$width/3, 0, $width/3, $height); // save output image imagejpeg($output,"result.jpg"); ?>
Если я начну с этого:
Я получаю это в результате
Затем я добавил черный контур, чтобы вы могли видеть масштаб изображения.
$cmd = " convert $photo -crop 33.5%x100% +repage -raise 5x1 "." monet_horizontal_%d.jpg"; exec($cmd); $cmd = " convert monet_horizontal_0.jpg wt.png monet_horizontal_1.jpg wt.png monet_horizontal_2.jpg +append "." abc.jpg"; exec($cmd);