Ìàñøòàáèðîâàíèå ôîòîãðàôèé
|
|
Ñðåäà, 18 Îêòÿáðÿ 2006 ã. 07:25
+ â öèòàòíèê
av3nger âñå çàïèñè àâòîðà
Âîïðîñ ïî php. Èìååòñÿ ðÿä ôîòîãðàôèé. Íàäî èõ îòìàñøòàáèðîâàòü ïîä îïðåäåëåííûé ðàçìåð. Äà è íå ïðîñòî îáðåçàòü ïî êðàÿì. À ñäåëàòü òàê, ÷òîáû êàê ìîæíî áîëüøå ôîòêè ñîõðàíèëîñü. Ò.å. óìåíüøèòü ìàêñèìàëüíî, à êðàÿ îáðåçàòü.  èòîãå íàäî ïîëó÷èòü ôîòêó ðàçìåðàìè X íà Y. (X è Y ÿ çàäàþ ñàì).
Äî ýòîãî ÿ äåëàë ýòî òàê:
PHP:
$thumbsize = 150;
$imginfo = getimagesize($imgfile);
$width = $imginfo[0];
$height = $imginfo[1];
$imgratio = $width / $thumbsize;
$imgratio = max($imgratio, 1.0);
$newwidth = (int)($width / $imgratio);
$newheight = (int)($height / $imgratio);
$thumb = ImageCreateTrueColor($newwidth,$newheight);
$source = imagecreatefromjpeg($imgfile);
imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, (int)$newheight, $width, $height);
imagejpeg($thumb,"../images/gallery/main/main_".$filename,100);
font>
Íî ýòî ëèøü äàâàëî ïðèìåðíûå ðåçóëüòàòû. Ò.å. äîáèòñÿ òàê, ÷òîáû ôîòêà ïî ðàçìåðó áûëà "ïèêñåëü â ïèêñåëü" ìíå íå óäàâàëîñü (äà è íå íóæíî áûëî).
Ó êîãî-íèáóäü åñòü êàêèå-òî èäåè?
-
Çàïèñü ïîíðàâèëàñü
-
0
Ïðîöèòèðîâàëè
-
0
Ñîõðàíèëè
-