@dorothea_stoltenberg
В PHP есть несколько способов изменить размеры картинки. Один из самых простых способов это с помощью функции imagecopyresampled
. Вот пример кода, который изменяет размеры картинки на нужный размер:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
$filename = 'path/to/image.jpg'; // Получаем информацию об изображении $imageInfo = getimagesize($filename); // Создаем изображение из файла $image = imagecreatefromjpeg($filename); // Указываем нужный размер изображения $newWidth = 100; $newHeight = 100; // Создаем новое изображение $newImage = imagecreatetruecolor($newWidth, $newHeight); // Копируем старое изображение в новое с изменением размера imagecopyresampled($newImage, $image, 0, 0, 0, 0, $newWidth, $newHeight, $imageInfo[0], $imageInfo[1]); // Сохраняем новое изображение в файл imagejpeg($newImage, 'path/to/new_image.jpg'); // Освобождаем память imagedestroy($image); imagedestroy($newImage); |
Обратите внимание, что в этом примере используется функция imagecreatefromjpeg
, которая создает изображение из файла JPEG. Если вы
@dorothea_stoltenberg
В PHP можно изменить размеры изображения с помощью функций из расширения GD (Graphics Draw).
Вот пример кода, который изменяет размер изображения:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
// Открываем изображение $имя_файла = 'путь_к_файлу/изображению.jpg'; $изображение = imagecreatefromjpeg($имя_файла); // Получаем текущие размеры изображения $ширина = imagesx($изображение); $высота = imagesy($изображение); // Устанавливаем новые размеры изображения $новая_ширина = 800; $новая_высота = 600; // Создаем новое изображение с новыми размерами $новое_изображение = imagecreatetruecolor($новая_ширина, $новая_высота); // Копируем изображение с измененными размерами imagecopyresampled($новое_изображение, $изображение, 0, 0, 0, 0, $новая_ширина, $новая_высота, $ширина, $высота); // Сохраняем новое изображение в файл $новое_имя_файла = 'путь_к_файлу/измененному_изображению.jpg'; imagejpeg($новое_изображение, $новое_имя_файла); // Очищаем память от созданных изображений imagedestroy($изображение); imagedestroy($новое_изображение); |
В этом примере мы открываем изображение с помощью функции imagecreatefromjpeg()
, получаем текущие размеры изображения с помощью функций imagesx()
и imagesy()
, устанавливаем новые размеры изображения, создаем новое изображение с новыми размерами с помощью функции imagecreatetruecolor()
, копируем изображение с измененными размерами с помощью функции imagecopyresampled()
, сохраняем новое изображение в файл с помощью функции imagejpeg()
, а затем очищаем память от созданных изображений с помощью функции imagedestroy()
.
Этот код работает с JPEG-изображениями. Если вы работаете с другими форматами изображений, вам нужно будет использовать соответствующие функции (например, imagecreatefrompng()
для PNG-изображений и imagegif()
для GIF-изображений).