我正在使用此功能
function resize($width,$height) {
$new_image = imagecreatetruecolor($width, $height);
imagesavealpha($new_image, true);
$trans_colour = imagecolorallocatealpha($new_image, 0, 0, 0, 127);
imagefill($new_image, 0, 0, $trans_colour);
imagecopyresampled($new_image, $this->image, 0, 0, 0, 0, $width, $height, $this->getWidth(), $this->getHeight());
$this->image = $new_image;
}
我要做的是制作一个正方形的图像。我想通过最小的属性来调整大小,而不是压缩更大的数字。我想把边缘切掉。
因此,如果我的图像尺寸为213 x 180,则需要将尺寸调整为150 x 150
在达到此功能之前,我可以将图像调整为150高度。
我不知道该怎么做,就是取宽度并切掉边缘以获得150的宽度而不会变形。
有谁知道如何做到这一点?
最佳答案
我猜你说“砍掉”边缘是指让你成为形象的人,对吧?
要裁剪图像,可以使用imagecopyresized。
一个小例子:
$imageSrc = //Your source image;
$tempImage = imagecreatetruecolor(150,150);
// CropStartX et cropStartY have to be computed to suit your needs
imagecopyresized($tempImage,$imageSrc,0,0,$cropStartX,$cropStartY,150,150,150,150);
// $tempImage now contain your cropped image.
关于php - 缩放图像?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5309682/