有可能在php中缩放图像吗? 我在google上搜索过但没有找到任何实用程序。
如果有人有任何提示,请给我。谢谢
答案 0 :(得分:2)
如果你遵循imagecopyresampled php示例(并使其变大而不是更小 - (在php.net示例中演示的更小),如果你正在传递一个js变量,那么你会得到像以下php:
<?php
// The file
$imgin = $_POST["dogimg"];
//e.g if your img is called dogimg!
$percent = 1.4; //140%
// Content type
header('Content-Type: image/jpeg');
// Get new dimensions
list($width, $height) = getimagesize($imgin);
$new_width = $width * $percent;
$new_height = $height * $percent;
// Resample
$image_out = imagecreatetruecolor($new_width, $new_height);
$image = imagecreatefromjpeg($imgin);
imagecopyresampled($image_out, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
// Output
imagejpeg($image_out, null, 100);
?>
但是,我应该指出在使用图像等文件类型时应该小心,我建议您在开始时将error handling添加到check that the file is an image(最好在上传时)如果您通过网站上传图像,则开始使用图像)。
如果您正在处理已上传到服务器上的预先上传的图片,那么您应该好好去。
答案 1 :(得分:2)
$geometry = '142x106';
$resize_geo = $geometry.'^';
$crop_geo = $geometry.'+0+0';
`convert $pic_original_path -resize $resize_geo -gravity Center -crop $crop_geo $pic_resized_path`;
答案 2 :(得分:1)
Imagecopyresampled解决方案:
$zoom=120; //to zoom 120%
$width = imagesx($myimage);
$height = imagesy($myimage);
$new_width = $width * $zoom / 100;
$new_height = $height * $zoom / 100;
imagecopyresampled($image_p, $myimage, 0, 0, 0, 0, $new_width, $new_height, $width, $height);