我正在尝试找到一个PHP图像库脚本,允许我从大图像中选择特定区域(x,y),然后裁剪/调整大小到较小的图像。
不得扭曲图像(通过拉伸和倾斜图片来调整大小)。如果有必要,可能需要“放大”(或其他什么?)来克服这个问题。
哪个PHP图像库脚本可以执行此操作?
答案 0 :(得分:3)
答案 1 :(得分:1)
GD(http://php.net/manual/en/book.image.php)或ImageMagick(http://php.net/manual/en/book.imagick.php)都可以进行裁剪操作。
在前端,如果您希望通过页面执行此操作,Jcrop(http://code.google.com/p/jcrop/)是一个不错的jQuery插件。
答案 2 :(得分:1)
您可以使用GD来实现这一目标。 我猜这样的事情可以做到:
/**
*@param string $pathToImage The original image (jpg)
*@param string $outputImage The name of the output image (jpg)
*@param int $x The top x coordinate of the portion you want to grab
*@param int $y The top y coordinate of the portion you want to grab
*@param int $width the width of the portion you want to grab
*@param int $height the height of the portion you want to grab
*@return void
*/
function getImagePortion($pathToImage, $outputImage, $x, $y, $width, $height)
{
$im = imagecreatefromjpeg($pathToImage);
$portion = imagecreatetruecolor($width, $height);
imagecopyresampled($portion, $im, 0, 0, $x, $y, $width, $height, imagesx($im), imagesy($im));
imagejpeg($portion, $outputImage, 100);
}
答案 3 :(得分:0)
我碰巧喜欢这堂课http://www.verot.net/php_class_upload.htm
我知道它说上传,但你也可以处理本地文件,如果它们是图像,它会给你很多非常酷的功能。你可以在http://www.verot.net/php_class_upload_samples.htm
中查找它们GL