Я новичок в jQuery, но я люблю его! У меня проблема, с которой я пока не справился.
Я использую http://www.zurb.com/playground/ajax_upload
который я получил, используя следующий файл upload.php
<? $time= time(); $uploaddir = 'users/'; //<-- Changed this to my directory for storing images $uploadfile = $uploaddir.$time.basename($_FILES['userfile']['name']); //<-- IMPORTANT if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) { echo $uploaddir.$time.$_FILES['userfile']['name']; // IMPORTANT #print_r($_FILES); } else { // WARNING! DO NOT USE "FALSE" STRING AS A RESPONSE! // Otherwise onSubmit event will not be fired echo "error"; } ?>
Я добавил переменную времени, чтобы каждое изображение было уникальным. Проблема в том, что я хочу изменить размер и оптимизировать изображение на лету, и я не уверен, как это сделать.
Изменение размера – это самый важный элемент, который мне нужен – например, мне нужна максимальная ширина 300 пикселей для изображения, которое сохраняется, даже если оно было первоначально 1000 пикселей шириной. Мне нужно изменить размер пропорциональности (это слово? :))
Любая помощь будет отличной.
С уважением, М
Чтобы изменить размер изображений, вам нужны библиотеки, такие как GD
Стандартная функция для этого – это выборка GD.
В примере показан один из способов изменения размера и сохранения пропорции:
//> MAx $width = 200; $height = 200; // Get new dimensions list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; }
В PHP, GD или Imagemagick есть две основные манипуляции с изображениями. Оба смогут делать то, что вам нужно. Вам нужно будет настроить их на своем веб-сервере PHP.