0

我正在尝试为我的图像上传脚本创建缩略图,我成功了!但我有一个小问题。如果您熟悉它,我使用pixlie创建缩略图。我试图获得相同的大小和效果,就好像我使用过的一样,style="width:200px; height:auto;" 我想保持缩略图的纵横比,但我还没有做到。

到目前为止我的代码是(我不确定我的“数学”):

$img = imagecreatefromjpeg($uploaddir);
$width = imagesx($img); //get width and height of original image
$height = imagesy($img);
$maxwidth = '200';

//scaling
if ($height < $width) {
  $ratio = $height / $width;   
  $newheight = $ratio * $height;   
  $newwidth = $maxwidth;  
}
elseif ($height > $width) {
  $ratio = $height / $width;
  $newheight = $ratio * $maxwidth;
  $newwidth = $maxwidth;
}

require_once('Pixlie.php');

$pixlie = new Pixlie();
$pixlie->setCache(new PixlieFileCache('thumbnail_img/'));
$thumbnail = new PixlieRenderOptions();
$thumbnail->setWidth($newwidth);
$thumbnail->setHeight($newheight);
$image = $pixlie->render("$uploaddir", $thumbnail);

如果你不熟悉pixlie,可能很难帮助我。但也许你可以帮助我计算数学,或者你可能有比 pixlie 更好的东西.. idk。(一些拇指的大小调整得很好,但其他拇指变得真实了..长方形..?)

预先感谢您提供的任何帮助。

4

1 回答 1

0

嗯……你确定没有最大高度吗?要获得正确的纵横比,这应该没问题:

// Scaling
$newwidth = $maxwidth;
$ratio = $width / $height;
$newheight = $newwidth / ratio;

所以宽度总是 200 和相应的高度。

于 2013-02-11T16:00:51.053 回答