Помощник
|
Помогите доработать функцию, которая обрезает изображение |
sc2r2bey
|
Сообщение
#1
|
||
|
|
||
|
|||
yury_mw |
16.2.2010, 14:08;
Ответить: yury_mw
Сообщение
#2
|
|
|
sc2r2bey,
примерно, так [php]/** /* @desc функция вырезает на картинке произвольную отцентрованную область /* @param $filename путь к файлу с исходной картинкой /* @param $w нужная ширина "обрезка" /* @param $h нужная высота "обрезка" /* @param $target_filename куда записывать результат. Если не указать, то перепишется исходный файл. */ function evokeAlignedArea($filename,$w,$h,$target_filename=null){ $thumb = imagecreatetruecolor($w, $h); $bgc = imagecolorallocate($thumb, 255, 255, 255); imagefilledrectangle($thumb, 0, 0, $w, $h, $bgc); $source = imagecreatefromjpeg($filename); $size = GetImageSize($filename); $x = round(($size[0]-$w)/2); $y = round(($size[1]-$h)/2); imagecopyresampled($thumb, $source, 0, 0, $x, $y, $w, $h, $w, $h); $target_filename = is_null($target_filename)?$filename:$target_filename; imagejpeg($thumb,$target_filename); imagedestroy($thumb); imagedestroy($source); return true; } ?>[/php] (работоспособность исходной функции не проверял, только убрал из параметров функции $x,$y и добавил вычисление центральной области картинки) опять же, желательно добавить проверки на то, что $filename - это картинка и что делать, если это не так, [php] $size = @GetImageSize($filename); if ($size) {} else {}[/php] что $w, $h - не превышают размеров исходного изображения и что делать, если это не так
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Помогите вспомнить рекламного бота Телеграм для обмена рекламой | 0 | Mixatraider | 729 | 21.2.2024, 23:42 автор: Mixatraider |
|
Помогите рещить проблему с монитором. Почему низкое разрешение при подключении монитора через displayport? |
0 | Levels | 1702 | 11.12.2020, 0:48 автор: Levels |
|
Boomerang Partners - новая партнерская программа для онлайн гемблинга, которая заплатит тебе больше. | 0 | BoomerangPartners | 1718 | 29.10.2020, 9:41 автор: BoomerangPartners |
|
Помогите кто нибудь получить партнерку Росбанк! | 7 | heisenberg_mw | 2342 | 7.8.2020, 9:28 автор: heisenberg_mw |
|
Помогите найти тему пожалуйста | 7 | virtas | 12519 | 24.7.2020, 17:02 автор: -JamesSmips- |
Текстовая версия | Сейчас: 24.4.2024, 10:30 |