[PHP] создание превьюшек
Ключевое слово --- "thumbnail".
---
...Я работаю антинаучным аферистом...
Только что озадачивался этим вопросом. При закачке из картинки делается уменьшенная и сохраняется. Главное при этом, если делать через пхп, маленькую картинку надо создавать через imagecreatetruecolor, а не imagecreate. Иначе качество не очень на выходе. Другой вариант - imagemagick.
thumbnail не пашет, чего-то не хватает
$bd = imagecreatefromjpeg($oldfile_name);
...
$sd = imagecreatetruecolor($wid2, $hei2);
imagecopyresampled($sd, $bd, 0, 0, 0, 0, $wid2, $hei2, $wid1, $hei1);
imagejpeg($sd, $newfile_name, 100);
ImageDestroy($bd);
ImageDestroy($sd);
А вобще читай http://www.php.net/manual/ru/ref.image.php
Сделать самому и обязательно на PHP, или сделать фотогалерею минимальными силами?
Если второе, то готовые скрипты тебе в руки, например: http://xome.net/projects/jigl/
это в общем-то все в качестве ботвы пхп
![](/images/graemlins/smile.gif)
2. вдогонку уж поясни плз до конца приведенный кусочек, что такое $sd, $bd, $old_filename, $new_filename понятно, оставшееся - видимо, ширина и высота. А что должно в принципе быть на месте троеточия?
![](/images/graemlins/smile.gif)
если движок не смарти, то все равно стОит посмотреть код - его оттуда довольно легко выдрать
http://www.cerdmann.com/thumb/
$old_filename - имя файла с которого делается превьюшка
$new_filename - имя файла куда запишется превьюшка
Вместо троеточия много что может быть, например там может быть определение размеров исходного изображения, если еще не определено и установка размеров нового изображения.
$size = getimagesize($old_filename);
$wid1 = $size[0];
$hei1 = $size[1];
$wid2 = $wid1/5;
$hei2 = $hei1/5;
А вобще все же почитай доки по соответствующим функциям, полезно и все понятно. А то скоро попросишь просто написать все за тебя
![](/images/graemlins/smile.gif)
![](/images/graemlins/smile.gif)
Оставить комментарий
stm6695895
хочется на хомяке сделать фотогалерею.можно ли как-то сделать так, чтобы скрипт выдавал маленькие превьюшки закачанных картинок?