我有一张尺寸为88x31的图片,想将它变成100x100,但只改变其画布/框架大小而不改变实际图像大小,也许可以通过将其复制到新的白色100x100大小的空白图像中心来实现。有什么好的方法吗?
我有一张尺寸为88x31的图片,想将它变成100x100,但只改变其画布/框架大小而不改变实际图像大小,也许可以通过将其复制到新的白色100x100大小的空白图像中心来实现。有什么好的方法吗?
正确的方法是创建一个新图像,然后将旧图像复制到其中间(假设起始图像为JPEG格式且小于100x100):
$oldimage = imagecreatefromjpeg($filename);
$oldw = imagesx($oldimage);
$oldh = imagesy($oldimage);
$newimage = imagecreatetruecolor(100, 100); // Creates a black image
// Fill it with white (optional)
$white = imagecolorallocate($newimage, 255, 255, 255);
imagefill($newimage, 0, 0, $white);
imagecopy($newimage, $oldimage, (100-$oldw)/2, (100-$oldh)/2, 0, 0, $oldw, $oldh);
imagecopy
http://fi.php.net/manual/en/function.imagecopy.php - nikc.org