book.png
png type images are being used to save on jpg compression everytime they are saved.
Also the backgrounds are transparent and jpg does not support transparency.
<?php
// Create the "pages" for the book
$cmd "-size 40x337 xc:#FFF8C6 -stroke '#827B60' -strokewidth 1 ".
"-draw \" line 5,0 5,337 \" -draw \" line 10,0 10,337 \" ".
"-draw \" line 15,0 15,337 \" ".
"-draw \" line 20,0 20,337 \" -draw \" line 25,0 25,337 \" ".
"-draw \" line 30,0 30,337 \" -draw \" line 35,0 35,337 \" ";

exec("convert $cmd pages.png");

// Distort the pages
$cmd "pages.png -matte -background none -virtual-pixel background ".
" -distort Perspective '0,0 0,337, 40,337, 40,0 0,0 0,337, 40,327, 40,10' ".
" -trim ";

exec("convert $cmd distort_pages.png");

// Distort the book front page
$cmd " 041207081754.jpg -matte -background none ".
" -virtual-pixel background ".
" -distort Perspective '0,0 0,337, 211,337, 211,0 0,20 0,317, 200,337, 200,0' ".
" -trim ";

exec("convert $cmd distorted_book.png");

// Join the pages to the book
$cmd " -background none distorted_book.png distort_pages.png +append ";

exec("convert $cmd book.png");

// Delete the tempory images
$delete = array('pages.png','distort_pages.png','distorted_book.png');
foreach ( 
$delete as $value ) {
    
unlink($value);
}

?>

Back to the distort examples index