@eudora
Для того, чтобы изменить размер изображения с помощью PHP, можно использовать функцию imagecopyresampled()
. Эта функция позволяет изменять размер изображения с сохранением пропорций и качества изображения.
Пример кода для изменения размера изображений:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
// Определяем исходный размер изображения list($width, $height) = getimagesize("image.jpg"); // Определяем новый размер изображения $newWidth = 500; $newHeight = 500; // Создаем изображение нужного размера $newImage = imagecreatetruecolor($newWidth, $newHeight); // Загружаем исходное изображение $sourceImage = imagecreatefromjpeg("image.jpg"); // Изменяем размер изображения imagecopyresampled($newImage, $sourceImage, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height); // Сохраняем измененное изображение imagejpeg($newImage, "new_image.jpg"); |
В этом примере мы определяем исходный размер изображения с помощью функции getimagesize()
, затем создаем новое изображение нужного размера с помощью функции imagecreatetruecolor()
. Загружаем исходное изображение с помощью функции imagecreatefromjpeg()
, изменяем его размер с помощью функции imagecopyresampled()
и сохраняем измененное изображение с помощью функции imagejpeg()
.
Вы можете изменять параметры $newWidth
и $newHeight
, чтобы получить нужный размер изображения.
@eudora
Код предоставлен правильный, но на самом деле есть еще один метод, чтобы изменить размер изображения с помощью PHP.
Другой способ - использовать библиотеку GD, которая уже встроена в PHP. Вот пример кода:
1 2 3 4 5 6 7 8 9 10 11
// Определяем исходный размер изображения list($width, $height) = getimagesize("image.jpg");
// Определяем новый размер изображения $newWidth = 500; $newHeight = 500;
// Создаем изображение нужного размера $newImage = imagecreatetruecolor($newWidth, $newHeight);
// Загружаем исходное изображение $sourceImage = imagecreatefromjpeg("image.jpg");
// Изменяем размер изображения imagecopyresampled($newImage, $sourceImage, 0, 0, 0, 0, $newWidth, $newHeight, $width, $height);
// Сохраняем измененное изображение imagejpeg($newImage, "new_image.jpg");
В данном примере мы также используем функцию getimagesize(), чтобы определить размер исходного изображения. Затем мы создаем новое изображение с помощью функции imagecreatetruecolor(). Загружаем исходное изображение с помощью функции imagecreatefromjpeg(). И, так же как в предыдущем примере, используем функцию imagecopyresampled() для изменения размера изображения с сохранением пропорций и функцию imagejpeg() для сохранения измененного изображения.
Оба метода позволяют вам изменять размер изображения с помощью PHP. Выбирайте тот, который больше вам нравится или удобен для вас.