Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) Общие вопросы по PHP Автоматическая замена оригинального изображения в новости уменьшенную копию

Автоматическая замена оригинального изображения в новости уменьшенную копию


     22.04.2012    Общие вопросы по PHP, Хаки    5561

вопрос
Добрый день! Столкнулся с данной проблемой. Суть проблемы в том что, как известно, во время добавления новости, точнее, во время загрузки изображения к новости себе на сервер (в папку аплоад) изображения грузятся в папку с "датой" добавления новости и дублируются в папку thumbs (уменьшенная копия), тем самым они группируются по месяцам и годам добавлений.

Задача такова. Мне нужно, что бы все уменьшенные копии загруженных изображений создавались, заменяя их оригинал. То есть, не в папку thumbs, а напрямую в папку с оригиналами, а оригинального изображения не было, а вместо его была уменьшенная копия. И что бы при добавлении новости, уменьшенная копия была в тегах [img], а не [thumbs].

Ответил: nowheremany


Это стандартная возможность двига.

-Максимально допустимые размеры изображения
Если размер будет больше, то оригинальное изображение будет автоматически уменьшено до указанного размера, иначе изображение будет пережато без изменения размера. Вы можете указать 0, если хотите чтобы изображение оставалось оригинальным.

-Размер уменьшенной копии загруженного изображения:
Вы задаете максимальный размер в пикселях любой из сторон загружаемой картинки при превышении которого будет создаваться уменьшенная копия. Например: 400

Комментарии пользователей (18)

klaf
1

45 | 40

klaf - 22 апреля 2012 18:40 - Юзер

Что мешает задать конкретный размер изображения, до которого оно будет обрезаться.
И выставить размер уменьшенной копии немного больше...

podvyg
22 | 17

podvyg - 22 апреля 2012 20:11 - Юзер

Мне не нужно дублирование изображений (и большие и маленькие), это раз. А второе, я же ясно изложил, что уменьшенная копия должна выводится тегом [img] и находиться не в папке thumbs

klaf
1

45 | 40

klaf - 22 апреля 2012 21:13 - Юзер

***Комментарий удален***

podvyg
22 | 17

podvyg - 23 апреля 2012 00:44 - Юзер

nowheremany, вы меня не поняли! Мне НУЖНО уменьшить изображение при добавлении новости, и не нужно хранить копию оригинала. Тоесть, у меня в новостях все картинки 320х240, а оригиналы 1280х1048 (к примеру). Оригинальная картинка весит 1 Мб (может и больше), а уменьшенная копия (ещё и сжатая) весит 28 - 40 кб. Вот мне и нужно что бы уменьшенная картинка была вместо оригинала, а оригинала НЕ БЫЛО. И что бы ЭТА уменьшенная картинка выводилась через тег [img], а не [thumbs].

Грубо говоря, нужно что бы уменьшенная копия (320х240px) заменяла файл (1280х1048px)

klaf
1

45 | 40

klaf - 23 апреля 2012 09:07 - Юзер

Дак тебе об этом и говорят!!!
Нахрена тебе уменьшенные копии, когда можно просто урезать оригинал до нужных размеров!?!?! И будет он выводится через [img]!!

podvyg
22 | 17

podvyg - 23 апреля 2012 14:29 - Юзер

klaf , Как урезать? На css ??? Мне нужно что бы картинка меньше весила. А уменьшенная копия весит намного меньше оригинала. Ели я на CSS уменьшу разрешение, то размер файла я никак не уменьшу.

podvyg
22 | 17

podvyg - 23 апреля 2012 14:39 - Юзер

Всё, дошло wink

СПАСИБО!!!! winked

podvyg
22 | 17

podvyg - 23 апреля 2012 14:48 - Юзер

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

Можете подсказать, какой шаблон отвечает за Upload?

nowheremany
192

1659 | 1292

nowheremany - 23 апреля 2012 15:40 - Эксперт

Вы задаете максимальный размер в пикселях любой из сторон загружаемой картинки при превышении которого будет создаваться уменьшенная копия. Например: 400
Поставьте 1000

Благодарность принимаю тут Связь

podvyg
22 | 17

podvyg - 23 апреля 2012 20:38 - Юзер

Уменьшенные все равно создаются автоматом. Подскажите, пожалуйста, где находится шаблон, который отвечает за модуль UPLOAD/ Уберу галку, на автоматическое создание копий.

klaf
1

45 | 40

klaf - 24 апреля 2012 00:07 - Юзер

посмотри в файле upload.php, который в engine\ajax
но если ты указал все размеры правильно, т.е. размер превью больше чем урезанной картинки, то превью не должны создаваться!

podvyg
22 | 17

podvyg - 24 апреля 2012 00:59 - Юзер

У меня размер оригинала в админке выставлен 400х400, а уменьшенная 800х800. При загрузке картинки большого размера (например 1920х1080) оригинал стаёт 400х400, а уменьшенная всеравно создаётся, с размерами 800х800. Потому как в аплоад стоит по-умолчанию галка, на создание уменьшенной копии. Если я её сделаю не активной, то уменьшенная не создаётся... Но руками это постоянно делать не хочется, та и 100 людям обьяснять по десятку раз и подправлять новости тоже не хочется. Самый простой выход убрать Checked, что бы галка по-умолчанию не была активна (как в ЛС или нак в подписке на коментарии). Вот теперь проблема, где сам шаблон. В файле аплоада указано, что всё тянится с $дле_темплеж. Но где он? Выручайте. Второй день довбусь с этими несчастными картинками... Пробовал даже через Оперу происпектировать эдемент... Так оно пишет что все стили и т.д. в файле image.php, но зайдя в него, я ничего связанного с HTML и CSS не нашел recourse

nowheremany
192

1659 | 1292

nowheremany - 24 апреля 2012 09:44 - Эксперт

Ну сделай ты не 800 а 10000000 в чем проблема то.

данные находятся в inc/files.php

Благодарность принимаю тут Связь

podvyg
22 | 17

podvyg - 24 апреля 2012 14:38 - Юзер

Спасибо. Подправил всё в файле. Если кому надо, вот код на убирание галки:

находим
    else echo "<input type=\"checkbox\" name=\"make_thumb\" value=\"make_thumb\" id=\"make_thumb\" checked> <label for=make_thumb>$lang[images_ath]</label></b>";


заменяем
    else echo "<input type=\"checkbox\" name=\"make_thumb\" value=\"make_thumb\" id=\"make_thumb\" > <label for=make_thumb>$lang[images_ath]</label></b>";



слово checked делает активным создание уменьшенных копий. (теперь, по-умолчанию отключено)

kazantipu
1

38 | 10

kazantipu - 7 мая 2012 13:57 - Юзер

что-то долго разбирались))

можно еще сделать чтобы код уменьшенного изображения вставлялись через img

нужно просто поменять функцию вставки javascript:insertthumbs на javascript:insertimage

себе сделал

partner21
7 | 4

partner21 - 9 февраля 2013 14:41 - Юзер

А как сделать подобный фильтр для отдельной категории. Например у меня есть раздел, где публикуются фото - для них нужно, чтобы создавались превьюшки. А вот в разделе новости мне превью и дубляжи картинок не нужны. Хочется, чтобы в категории "новости" любая картинка автоматически уменьшалась до нужного размера и выводилась тегом [img], а в категории "фото" [thumbs]

Каждый раз переключать очень не удобно. Дело еще в том, что новости добавляют журналисты. Они тем более не будут с этим возиться

Richmon
1

Richmon - 23 июня 2014 19:57 - Юзер

Приветствую, где настроить, чтоб при вставки картинки автоматически было выбрано оригинальное изображение, чтобы не выбирать каждый раз?

podvyg
22 | 17

podvyg - 23 июня 2014 22:46 - Юзер

В файле \engine\ajax\upload.php отключаем автосоздание уменьшенной копии.

https://dle-faq.ru/faq/phpquest/1894-avtomaticheskaya-zamena-originalnogo-izobrazheniya-v-novosti-umenshennuyu-kopiyu.html#comment-id-4806

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы