我需要以水平方式切割图像。为此,我使用了以下代码
$filename = 'test.jpg';
$fileData = getimagesize($filename);
$source_handle = ImageCreateFromJPEG($filename);
$imageW = $fileData[0];
$imageH = $fileData[1];
/* Cropping Parameters */
$part1X = 0;
$part1Y = 0;
$part1W = $imageW;
$part1H = $imageH/2;
$part2X = 0;
$part2Y = $imageH/2;
$part2W = $imageW;
//$part2H = $imageH/2;
$part2H = $imageH;
$to_crop_array = array('x' =>$part1X , 'y' =>$part1Y, 'width' => $part1W, 'height'=> $part1H);
$imgCroped1 = imagecrop($source_handle, $to_crop_array);
$to_crop_array = array('x' =>$part2X , 'y' =>$part2Y, 'width' => $part2W, 'height'=> $part2H);
$imgCroped2 = imagecrop($source_handle, $to_crop_array);
/* Image Split */
imagejpeg($imgCroped1, '1a.jpg', 100);
imagejpeg($imgCroped2, '1b.jpg', 100);
通过此代码,图像分为两部分。但有些图像用黑色bg保存。我需要将这个黑色bg改为白色。
为此,我使用了以下代码。
// set background to white
$white = imagecolorallocate($imgCroped2, 255, 255, 255);
imagefill($imgCroped2, 0, 0, $white);
imagejpeg($imgCroped2, 'xx.jpg', 100);
但白色bg未应用。如何更改此代码以将白色bg应用于切片图像。请帮我。