Изменить размер изображения и миниатюры - PullRequest
1 голос
/ 25 ноября 2011

Я прочитал много статей и обсуждений на форумах, и до сих пор не могу понять разницу между изменением размера большого изображения с помощью php (не с html) и созданием миниатюр. За исключением того факта, что большинство людей предлагают phpthumb и imageMagick для миниатюр, я не понимаю, почему я должен или не предпочитаю использовать их, а не функции php, такие как imagecreatefromgif (png, jpeg) и imagecopyresampled, которые могут выполнять эту работу (в зависимости от того, что Я читаю.). Я пытаюсь создать много галерей, поэтому я хочу, чтобы изображения, которые загружает пользователь, были изменены в меньшем размере, если они слишком велики. Кроме того, мне нужно, чтобы эти изображения были изменены в меньших изображениях, которые будут показаны в галерее, и когда пользователь нажимает на них, они получают их реальный размер. Пока что пользователь может загрузить изображение, которое будет сохранено в папке. Я изменяю размеры своих изображений для галерей с помощью html (что я знаю, что это неправильно), и я использую fancybox для щелчка и увеличения части, которой я доволен. Пожалуйста, помогите понять разницу и дайте мне совет, что лучше всего сделать. Спасибо

Ответы [ 2 ]

3 голосов
/ 25 ноября 2011

Возьми этот сценарий.

Я профессиональный фотограф, и ваше фото приложение будет хранить каждое мое изображение. Я снимаю в RAW, поэтому мои изображения огромны. Я также хочу загрузить оригинальное высокое разрешение JPEG.

Теперь, если вы не измените размеры этих изображений на миниатюры (каким бы механизмом вы ни выбрали), если я попытаюсь просмотреть конкретный альбом, мне, возможно, придется загрузить изображения размером 10x20 МБ, чтобы их размеры были уменьшены до 80x60 пикселей ( стать полностью потрескивающим / шумным и чрезвычайно неровным).

Так что вы можете сделать?

Измените размеры изображений на вашем сервере, используя что-то вроде ImageMagick, поскольку вы предлагаете создать несколько версий этого изображения. Таким образом, вы можете получить оптимизированные качества на любой случай.

Вы всегда должны отображать изображение в его собственном разрешении / измерении, чтобы избежать растрового шума или изменения размера.

А также, вы хотите сохранить различные версии изображений.

1 голос
/ 25 ноября 2011

imagecreatefromgif() будет использовать библиотеку GD по умолчанию.

Некоторые причины, по которым можно предпочесть ImageMagick, подробно описаны здесь и здесь .

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

...