开发者

PHP crop and resize image on the fly

I have a web page that displays images that I don't know their size in a开发者_如何学Godvance. I was trying to use the GD functions to make the script resize and crop the images from me " Just before they are displayed.. I don't need caches" but I failed. I need a script that I can call like this

<img src="display.php?src=blablabla&height=100&width=200" ?>

or even by calculating the width and height of css to preserve the proportions and make the image touch the box from inside like

<img src="blabla.jpg" style="height:<?php echo $height; ?>; width:<?php echo width; ?>" />

I don't need any sort of caching. How can I do that ?


WideImage rlz! :)

The resize's like that:

header('Content-type: image/jpeg');

echo WideImage::load('image.jpg')->resize(200, 100)->asString('jpg', 80);
// image.jpg resized at 200x100 with 80% of quality


You'll need to use the first style. Because this would be happening server-side, you can't check the CSS to get the desired size.

You just need to use the GD functions to open the appropriate file, use imagecopyresampled() to resize it, and then output to the buffer using imagejpeg. Don't forget to set the right headers:

header('Content-type: image/jpeg');


OR phpthumb http://phpthumb.sourceforge.net/

Demo is available at: http://phpthumb.sourceforge.net/demo/demo/phpThumb.demo.demo.php


You are looking for TimThumb (Demo | Source Code):

Simply copy the source code into a new document called ‘timthumb.php’, place it in a folder on your site (ex: /scripts/) and call the image like this:

<img src="/scripts/timthumb.php?src=/images/whatever.jpg&h=150&w=150&zc=1" alt="">
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜