Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- // Функция для обрезки изображения в квадрат указанной ширины
- /*
- $source_img - исходное изображение
- $w - необходимая ширина обрезанного изображения
- $crop_img - путь и имя файла обрезанного изображения
- */
- function image_crop_thumbnail($source_img, $w, $crop_img)
- {
- $size_img_arr = getimagesize($source_img); // массив размеров исходного изображения
- // получаем ширину и высоту исходного изображения
- $iw = $size_img_arr[0];
- $ih = $size_img_arr[1];
- $h = $w; // необходимые высота и ширина обрезанного изображения
- $rw = $w / $iw; // вычисляем соотношение обрезаемой и исходной ширины
- $rh = $h / $ih; // вычисляем соотношение обрезаемой и исходной высоты
- $r = max($rw, $rh); // выбираем максимальное соотношение сторон
- $ih = $h / $r; // масштабируем исходную высоту
- $ix = ($iw - $w / $r) / 2; // определяем координату Х центра исходного изображения
- $iw = $w / $r; // масштабируем исходную ширину
- $tc = imagecreatetruecolor($w, $h); // создаем блок обрезанного изображения
- $src = imagecreatefromjpeg($source_img); // создаем ресурс из исходного изображения
- imagecopyresampled($tc, $src, 0, 0, $ix, 0, $w, $h, $iw, $ih); // масштабируем и обрезаем изображение
- imagejpeg($tc, $crop_img, 100); // сохраняем полученное изображение
- return $crop_img;
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement