Intereting Posts
PHP, как перебирать массив сообщений Сохранить расчет в коде или базе данных? PHP-массив копирует определенные ключи, встроенные функции? Производительность вложенного контура? Как определить, работает ли на localhost php относительные URL-адреса для абсолютного преобразования URL-адресов с в конечном итоге базовым href html-тегом Zend Framework: использование тире в именах / URL-адресах контроллера $ _SERVER отсутствует Symfony2 – Как установить и получить опции при использовании класса формы? Настройка переменных сеанса PHP с помощью Flash ActionScript Отмена прекращения загрузки с ошибкой «Файл пуст» Facebook iframe не работает в IE; проблема сеанса / входа? PHP PDO fetch null Конвертировать необычный формат даты в метку времени наиболее эффективным способом? загрузка, обработка, хранение и доставка предоставленных пользователем файлов и изображений Миграция Laravel: уникальный ключ слишком длинный, даже если указан

Загрузка и изменение размера PHP

Я работаю над сценарием, который загружает изображение с помощью PHP, и я хочу, чтобы он изменил размер изображения на 180 до его сохранения.
Я попытался использовать библиотеку WideImage и -> saveFileTO (…), но когда я включу WideImage.php на странице, страница станет пустой!
Итак, вот мой скрипт, если вы можете мне помочь и рассказать мне, как сделать его сохраненной измененной версией

Solutions Collecting From Web of "Загрузка и изменение размера PHP"

Вы можете использовать библиотеку PHP GD для изменения размера изображения при загрузке.

Следующий код должен дать вам представление о том, как реализовать изменение размера:

// Get the image info from the photo $image_info = getimagesize($photo); $width = $new_width = $image_info[0]; $height = $new_height = $image_info[1]; $type = $image_info[2]; // Load the image switch ($type) { case IMAGETYPE_JPEG: $image = imagecreatefromjpeg($photo); break; case IMAGETYPE_GIF: $image = imagecreatefromgif($photo); break; case IMAGETYPE_PNG: $image = imagecreatefrompng($photo); break; default: die('Error loading '.$photo.' - File type '.$type.' not supported'); } // Create a new, resized image $new_width = 180; $new_height = $height / ($width / $new_width); $new_image = imagecreatetruecolor($new_width, $new_height); imagecopyresampled($new_image, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height); // Save the new image over the top of the original photo switch ($type) { case IMAGETYPE_JPEG: imagejpeg($new_image, $photo, 100); break; case IMAGETYPE_GIF: imagegif($new_image, $photo); break; case IMAGETYPE_PNG: imagepng($new_image, $photo); break; default: die('Error saving image: '.$photo); } 

Вы можете использовать класс, который я написал для такой задачи:

http://code.google.com/p/image2/source/browse/#svn/trunk/includes/classes

 <?php try { $image = new Image2($path_to_image); } catch (NotAnImageException $e) { printf("FILE PROVIDED IS NOT AN IMAGE, FILE PATH: %s", $path_to_image); } $image -> resize(array("width" => 180)) -> saveToFile($new_path); // be sure to exclude the extension $new_file_location = $image -> getFileLocation(); // this will include the extension for future use 

Вам даже не нужно использовать библиотеку WideImage.

Проверьте этот скрипт здесь: http://bgallz.org/502/php-upload-resize-image/

Вы начинаете с загрузки изображения и сохранения в файл временного изображения. Этот скрипт запускается с формой с входами для максимальной высоты или максимальной ширины. Таким образом, он будет генерировать новый файл изображения на основе новой ширины / высоты, а затем скопировать временное изображение на новый, созданный на сервере.

Вы видите это со следующим кодом:

 // Create temporary image file. $tmp = imagecreatetruecolor($newwidth,$newheight); // Copy the image to one with the new width and height. imagecopyresampled($tmp,$image,0,0,0,0,$newwidth,$newheight,$width,$height); 

Не используйте какую-либо библиотеку. Проверьте этот скрипт. http://dr-wordpress.blogspot.com/2013/12/image-resizing-using-php.html Просто дал качество imges (0-99), этот код автоматически изменит размер изображения при загрузке