0

timthumb を使用して画像のサイズを変更しています。これは、寸法の 1 つだけを入力すると画像が適切にスケーリングされるためです。ただし、新しいサイズ変更された画像の寸法を抽出して、動的に img タグ属性に追加できるかどうかを知りたいです。

私は運がないのでこれを試しました:

$fullpath = '/lib/timthumb.php?src='.$image.'&w=100';
$my_image = array_values(getimagesize($fullpath));
list($width, $height, $type, $attr) = $my_image;

何か案は?

4

2 に答える 2

3

timthumb によってキャッシュに生成されたサムを直接読み取る方法はわかりませんが、これは機能するはずです。

$fullpath = '/lib/timthumb.php?src='.$image.'&w=' . $newWidth;

#array with 0 being the width, and 1 being the height, and some other values as well
$oldDims = getimagesize($image);

#timthumb uses floor(), so mimicing here
$newHeight = floor($newWidth / $oldDims[0] * $oldDims[1]); 
于 2012-09-21T21:00:25.630 に答える
-1

私の考えは、サーバーにアップロードする前に画像を拡大縮小することです。画像のサイズを変更する画像がたくさんある場合、この方法はコストのかかる操作です。また、timthumb phpは、それ自体でこれを行う必要はありません。したがって、サーバー上の画像のサイズを本当に変更する必要がある場合は、次のようにしてみてください...

$size = gewtimagesize($image);
$dimensions = $size['3'];//returns height="xxx" width="xxx"
$img = <<<IMG
    <img src="path/to/img" $dimensions >
IMG;
echo $img;

それが機能するかどうかはわかりませんが、私には正しく見えます

-編集-これはあなたのために機能しないことを気にしないでください

于 2012-09-21T21:08:19.190 に答える