PHP的简单图像缩放

时间:2013-08-05 18:33:10

标签: php image scaling

我可以知道是否有任何简单的代码来缩放我从数据库中检索到的图像以进行显示。有很多解决方案,但似乎所有这些解决方案都非常复杂。

基本上,我只是从数据库中提取图像文件并显示它。我希望显示的图像尺寸统一。

3 个答案:

答案 0 :(得分:4)

如果您正在寻找简洁性,我建议您使用CSS来缩放图像。

看看这个威胁: Resize image proportionally with CSS?

您还可以使用CSS剪辑属性根据需要裁剪图像: http://www.w3schools.com/cssref/pr_pos_clip.asp

答案 1 :(得分:2)

<?php
$image = new Imagick( $filename );
$image->resizeImage(200,200, imagick::FILTER_LANCZOS, 0.9, true);
?>

你需要Imagemagick api 或者用css方式做,就像上面说的那样

答案 2 :(得分:0)

图像大小与文件大小有些独立,因为位深度分辨率是文件大小的主要因素。但是对于缩放和保持纵横比(所以它看起来并不好笑),您会发现高度与固定目标宽度的比例等效。与将它们存储在网络存储中相比,存储在表格中的图像是一个很大的性能影响,但我们可以讨论替代方案。

举一个例子,假设您想要固定宽度为500,但图片为1280x900。

将1280/900与500 / x交叉乘以得到(450000)= 1280x,现在解决新高度X =(450000)/ 1280或x = 351.5625。

所以我们可以将它翻译成php,如:

   //detect picture size
 list($width, $height, $type, $attr) = getimagesize("image_file_name.gif");

因为我们已经知道了目标宽度,所以让我们通过使用交叉乘法的简化版来获得目标高度:

  $newHeight=($height*500)/$width;

现在我们现在要做的就是使用resizer方法,因为现在我们也有目标高度。

这是一篇关于这个主题的好文章:https://dzone.com/articles/resize-image-class-php

我现在没有时间处理详细信息。