Скажите, можно ли с помощью PHP менять физическое разрешение картинки, т. е. не HTML-теги img width и height, а само разрешение картинки. Если можно, то как.
Не расширение - *.jpg, *.png, *.gif и т. д., а разрешение . Т. е. есть фотка 800х600, например. Надо из неё с помощью PHP сделать 120х150. Я не знаю английский на отлично, но как я понял, нужна какая-то библиотека для работы с этими функциями? Или не нужна?
Ладно, пусть не разрешение, а ширина и высота. А никак по другому нельзя? А то вдруг на jino-net эта библиотека не подключена (у меня, например, эта библиотека не была подключена)? Я хочу, чтобы при загрузке одной большой фотки, из неё создавалась превьюшка примерно 120х150 и сохранялась в папку previews. Я уже всё сделал, но не могу сделать из большой фотки маленькую превьюшку. Посмотрел тот мануал, но вместо отображения маленькой фотки выводится куча символов. Скрипт взял из примера. Может можно изменить через PHP размер как-нибудь по-другому?
Скорее всего вы забыли отправить заголовок. Поэтому браузер воспринимает картинку как текст. Вам поможет функция header(): PHP: header("Content-type: image/*"); // где * расширение файла: *.jpg, *.jpeg, *.bmp, *.png ... Пример фотогалереи с созданием уменьшенных копий изображений можно найти на сайте http://softtime.ru./info/downloads.php.
DarkElf Теперь вообще ничего не отображается (header отправлял). Кстати, я хочу, чтобы созданные превьюшки сохранялись в паку. Как это сделать?
Вы хотите, чтобы превьюшки сохранялись в папку на компьютере пользователя? - Ознакомьтесь со статье 273 Уголовного Кодекса РФ и дважды подумайте.
Да не на компе пользователя, а на сервере. Пользователь загружает на сервер фотку, она сохраняется в папке photos (уже сделал), а из этой фотки уже автоматически, через PHP, делается превьюшка и сохраняется в папку previews (пока не сделал). Пока пользователь загружает и фотку и превьюшку, а я хочу, чтобы он загружал только фотку, а превьюшка создавалась сама - пользователем будет гораздо удобнее делиться фотографиями.
Обратитесь к книге "Практика создания Web-сайтов" Кузнецова, Симдянова, Голышева. В одной из ее глав этот процесс подробно описан. Если не хотите/можете/в падлу/денег нет курить их книгу, то вот полезные ссылки:
Я понял как делать и сохранять превьюшку, понял алгоритм действий, но проблема в том, что вместо картинки чрезе функцию imagejpeg() отображается куча символов. Библиотеку GD подключил, дело не в ней, т. к. ошибок не выдаёт. Я уж и Код (Text): header("Content-type: image/jpeg"); делал, но не получается. В чём может быть проблема? Он не выводит даже пустой квадрат (вместо него опять символы): Код (Text): header("Content-type: image/png"); $image=imagecreatetruecolor (300,300); imagepng($image); imagedestroy($image); Пример взят из книги, точно работает. У меня PHP 4, пишут, должно работать.
Петр Что за заголовки из моего ответа? Я PHP совсем недавно начал изучать и не знаю, что это. pel Warning: Cannot modify headers information нет, не написано. Написано это (в самом начале, что я смог найти среди всех символов: Код (Text): яШяаJFIFяю>CREATOR: gd-jpeg v1.0 (using IJG JPEG v62), default quality яЫC $.' ",#(7),01444'9=82<.342яЫC 2!!
Код (Text): <? header("Content-type: image/png"); $image=imagecreatetruecolor (300,300); imagepng($image); imagedestroy($image); ?> точно работает. Попробуйте еще раз этот код _в точности_ как написано выше вставить в файл. Только это, больше ничего. а почему "JPEG", если в последнем коде png создается?? Вы, что ли, объединили Код (Text): header("Content-type: image/jpeg"); и Код (Text): <? header("Content-type: image/png"); $image=imagecreatetruecolor (300,300); imagepng($image); imagedestroy($image); ?> ???
Спасибо всем всё заработало. Png просто в примере, а так я jpeg делаю. Ошибка в том, что header() нужно делать в самом начале, а я после <html> и т. д.