|
| |
|
|
| |
для: DJ Paltus
(10.08.2006 в 13:29)
| | | Здравствуйте!
Стал повнимательнее смотреть данный скрипт. Обнаружил, что вокруг рисунков (уменьшенных) появляются черные поля.
Подскажите, пожалуйста, как его доработать, чтобы они не появлялись?
С уважением,
Ярослав. | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(10.08.2006 в 15:57)
| | | А я честно говоря не въехал. Объясните, как вывести картинку.
Написать например
resizeimg("1.jpg",100,70);
|
так он выводит только размер начальной картинки.
Как вывести измененную то? | |
| |
|
|
| |
|
|
| |
для: DJ Paltus
(10.08.2006 в 13:29)
| | | Спасибо, DJ Paltus!!!
Все прекрасно работает! | |
| |
|
|
| |
|
|
| |
для: Jaroslav
(10.08.2006 в 13:05)
| | | Хотел найти ссылку в форуме, но не смог. Вот код, который ипользую я.
Здесь в параметрах $w и $h соответственно ширина и высота будущей картинки.
Задавать надо ширину большую, высоту меньшую. А скрипт сам выяснит, горизонтальная картинка или вертикальная и поменяет, если надо, значения. Главное, соблюдать пропорции, это обычно 3*4 или 4*3, то есть 150*200, 90*120 и так далее. Тогда у иконок не будет черных полей.
<?php
function resizeimg($filename, $w, $h){
$size_img = getimagesize($filename);
print"$size_img[0] x $size_img[1] <br />";
if($size_img[0]<$size_img[1]){$a=$w; $w=$h; $h=$a;}
$ratio = $w/$h;
$dest_img = imagecreatetruecolor($w, $h);
imagefill($dest_img, 0, 0, 0xFFFFFF);
$src_ratio=$size_img[0]/$size_img[1];
if ($src_ratio>$ratio){
$old_h=$size_img[1];
$size_img[1]=floor($size_img[0]/$ratio);
$old_h=floor($old_h*$h/$size_img[1]);
}
else {
$old_w=$size_img[0];
$size_img[0]=floor($size_img[1]*$ratio);
$old_w=floor($old_w*$w/$size_img[0]);
}
switch ($size_img['mime']){
case 'image/jpeg': $src_img = imagecreatefromjpeg($filename);
$ext="jpg";
break;
case 'image/gif': $src_img = imagecreatefromgif($filename);
$ext="gif";
break;
}
imagecopyresampled($dest_img, $src_img, 0, 0, 0, 0, $w, $h, $size_img[0], $size_img[1]);
switch ($size_img['mime']){
case 'image/jpeg': imagejpeg($dest_img, "lt_".$filename);
break;
case 'image/gif': imagegif($dest_img, "lt_".$filename);
break;
}
imagedestroy($dest_img);
imagedestroy($src_img);
}
|
| |
| |
|
|
| |
|
|
| | Здравствуйте!
Подскажите, пожалуйста, как можно изменить размеры рисунка.
Например, пользователи добавляют рисунок 1000x600 и ставят галочку «сделать превью», и этот большой рисунок должен переделываться в маленький, скажем 200x200. Не просто поменять атрибуты width и height, а переписать его с другими размерами.
С уважением,
Ярослав. | |
| |
|
|
|