-Подписка по e-mail

 

 -Поиск по дневнику

Поиск сообщений в community_coding

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 29.12.2004
Записей:
Комментариев:
Написано: 536


Масштабирование фотографий

+ в цитатник

Cообщение скрыто для удобства комментирования.
Прочитать сообщение


mesca1ito   обратиться по имени Среда, 18 Октября 2006 г. 11:49 (ссылка)
животрепещущая тема... у меня на РНР это сделать тоже н получается... хотя есть скрипт на Perl'и на bash'е. перловый работает нормально (могу скомпилить в двоичку, если надо) а с башем трабл -- картинки по горизонтали перекашивает, хотя вроде как все написано нормально..
Ответить С цитатой В цитатник
ellesar2001   обратиться по имени Среда, 18 Октября 2006 г. 15:09 (ссылка)
Пропорциональное уменьшение:
code:
function imageresize($path, $newwidth) {
list($width, $height) = @getimagesize($path);

$newheight = $height/($width/$newwidth);

$new = @imagecreatetruecolor($newwidth, $newheight);
$source = @imagecreatefromjpeg($path);

@imagecopyresized($new, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

@imagejpeg($new, $path);
}

Или тебе иное нужно?
Ответить С цитатой В цитатник
av3nger   обратиться по имени Среда, 18 Октября 2006 г. 15:33 (ссылка)
ellesar2001, не, пропорциональное уменьшение пойдет лишь в том случае, если рисунки везде одной и той же пропорции. а если у меня одни 150px на 20px, другие 150х150, а третие 60х120. все равно уменьшить все рисунки одновременно до 32х11 не получится.
Ответить С цитатой В цитатник
av3nger   обратиться по имени Суббота, 21 Октября 2006 г. 01:28 (ссылка)
вроде бы, разобрался.

cropW и cropH отвечают за ширину и высоту.

code:
$imginfo = getimagesize($imgfile);
$width = $imginfo[0];
$height = $imginfo[1];
$cropStartX = round($width/2)-80;
$cropStartY = round($height/2)-60;
$cropW = 144;
$cropH = 119;
$origimg = imagecreatefromjpeg($imgfile);
$cropimg = imagecreatetruecolor($cropW,$cropH);
list($width, $height) = getimagesize($imgfile);
imagecopyresized($cropimg, $origimg, 0, 0, $cropStartX, $cropStartY, $width, $height, $width, $height);
imagejpeg($cropimg,"../images/gallery/main/main_".$filename,100);
imagedestroy($cropimg);
imagedestroy($origimg);


да. и предварительно я уменьшаю фотку пропорционально до более маленького размера (в этом случае до 200 по ширине). и тогда при обрезании фотки как раз видно большую часть фотографии.
Ответить С цитатой В цитатник
Комментировать К дневнику Страницы: [1] [Новые]
 

Добавить комментарий:
Текст комментария: смайлики

Проверка орфографии: (найти ошибки)

Прикрепить картинку:

 Переводить URL в ссылку
 Подписаться на комментарии
 Подписать картинку