Автоматическое масштабирование изображения в тексте

Аватар пользователя roman-yrv roman-yrv 2 сентября 2011 в 20:36

Добрый день.
Совсем недавно начал изучать Drupal и хочу уточнить одну вещь.
А именно, я решил сделать так, чтобы при вставке большой картинки в текст вместо неё в тексте была превьюшка, по нажатию на которую выскакивало бы изображение с нормальными размерами, или хотя бы масштабированными по размеру экрана.
С помощью связки imce + BUEditor + Image Resize Filter + LightBox2 почти удалось этого добиться (использовал эту инструкцию).
Проблема заключается в том, что при вставке картинки нужно вручную задавать её уменьшенные размеры, чтобы Image Resize Filter мог это изображение обработать, а это не очень удобно, особенно для не-ITшника.

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

Например, у меня в дизайне максимальная ширина для блога - 600px. И если я с помощью IMCE вставляю картинку с шириной 1200px, то каким способом легче всего сделать так, чтобы при вставке у неё автоматически бы прописывалось в img width="600" ?
Либо в крайнем случае, делать это при сохранении текста с картинкой перед выполнением фильтра image resize filter.

Комментарии

Аватар пользователя NurOff NurOff 3 сентября 2011 в 0:11

У вас слишком много модулей, для одного действия.

"roman-yrv" wrote:
при вставке картинки нужно вручную задавать её уменьшенные размеры

"roman-yrv" wrote:
каким образом можно сделать так, чтобы при вставки в текст картинки с размером больше, чем определенное значение, её ширина и высота автоматически бы масштабировались и подгонялись под нужные размеры

Есть же модуль Imagecache, в котором достаточно один раз задать все возможны шаблоны(Обычно tumbnails, preview,medium и large) и установить их параметры.
"roman-yrv" wrote:
И если я с помощью IMCE вставляю картинку с шириной 1200px, то каким способом легче всего сделать так, чтобы при вставке у неё автоматически бы прописывалось в img width="600" ?
И ваши пользователи, точнее пользователи вашего сайта загружают эти пиксели, которые им не покажут даже. И трафик вашего хостинга растет.
Imagecache + BUEditor + BUEditor One Click Upload + LighBox, ColorBox или Fancybox.
Загрузка в один клик, в Imagecache заранее настроены все ресайзы.

Аватар пользователя roman-yrv roman-yrv 3 сентября 2011 в 16:56

Скажите, а есть ли возможность такой интеграции, как imce + BUEditor + ImageCache ?
И чтобы масштабирование загруженной в текст картинки было автоматическим.

А то установил ImageCache, создал действие по масштабированию и не имею представления, как его подключить к редактору BUEditor или imce, чтобы масштабирование картинки происходило автоматически и на сервере хранилась как большая загруженная картинка, так и небольшая превьюшка, нажав на которую, можно было бы посмотреть на большую картинку.

Аватар пользователя NurOff NurOff 3 сентября 2011 в 18:11

Простите уже и не помню, как давно использовал этого монстра. Попробуйте все же BUEditor One Click Upload(На сайте автора модуля подробная инструкция, как и что настроить.) + ColorBox. Первыая фишка добавит вам кнопочку в редактор позволяющую выбрать картинку с диска и загрузить + она же и вставит ссылку в ваш материал, удобоваримую для

"roman-yrv" wrote:
так и небольшая превьюшка, нажав на которую, можно было бы посмотреть на большую картинку
, а вторая фишка будет делать
"roman-yrv" wrote:
нажав посмотреть на большую картинку
во всплывающем окне, и если таких картинок будет несколько, вы получите еще и слайдшоу во всплывающем окне.

Аватар пользователя FORTIS FORTIS 3 сентября 2011 в 19:23

альтернатива: wysiwyg + ckeditor (или другой) + insert (там есть максимальный размер для вставки) + image resize filter (если нужно)

Аватар пользователя FORTIS FORTIS 3 сентября 2011 в 19:28

можно убрать у картинки атрибуты width и height (темизацией) и назначать ей «width: 100%» - так она будет растягиваться на ширину блока

Аватар пользователя NurOff NurOff 3 сентября 2011 в 19:29

"FORTIS" wrote:
insert (там есть максимальный размер для вставки) + image resize filter (если нужно)
человек хочет раз настроить и больше не парится.

Аватар пользователя NurOff NurOff 4 сентября 2011 в 5:01

И надо, пожалуйста, давать такие советы:
"Если не желаете ставить модуль IMCE, но хотите чтобы картинка стала превьюшкой, достаточно написать ширину и/или высоту (в пикселях) тогда изображение станет меньшего размера."

Вот так и получаются страницы с превьюшками размера 10-15 Мб. Изображение-то грузится целиком, а потом уже браузером сжимается. А после таких советов товарищи пользователи заливают фотографию размером 2 Мб с фотоаппарата, ставят размер 200x100 и думают, что все отлично.

"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
WYSIWYG Image Upload

Кстати не пробовал не разу.
Он сразу втыкает превьюшку со ссылкой на другой ресайз?
Или надо дотачивать?

Аватар пользователя roman-yrv roman-yrv 4 сентября 2011 в 9:02

"NurOff" wrote:
"Если не желаете ставить модуль IMCE, но хотите чтобы картинка стала превьюшкой, достаточно написать ширину и/или высоту (в пикселях) тогда изображение станет меньшего размера."
Вот так и получаются страницы с превьюшками размера 10-15 Мб. Изображение-то грузится целиком, а потом уже браузером сжимается. А после таких советов товарищи пользователи заливают фотографию размером 2 Мб с фотоаппарата, ставят размер 200x100 и думают, что все отлично.

Ну, насколько я понимаю, для этого как раз и существует модуль Image Resize Filter.
Проставил руками размеры, этот модуль автоматически заменил большую картинку на маленькую превьюшку и всё хорошо.
А вот как сделать, чтобы хотя бы перед работой этого модуля работал какой-нибудь другой модуль, который бы прописывал принудительно нужную ширину для тех изображений, которые больше.
Разве что написать свой модуль для этого, а заодно и разобраться в том, как эти модули писать ...

Аватар пользователя NurOff NurOff 4 сентября 2011 в 11:47

"roman-yrv" wrote:
который бы прописывал принудительно нужную ширину для тех изображений, которые больше.
Я все равно не понял ничего. А ImageCache как раз это и делает.

Аватар пользователя FORTIS FORTIS 4 сентября 2011 в 14:23

"NurOff" wrote:
И надо, пожалуйста, давать такие советы:

для особо одаренных: этот совет был в дополнение к предыдущему, в связке с insert'ом (imagecache), на случай если верстка резиновая. объяснять вебмастеру что 10 метровые фотки в контенте плохо это мне кажется лишнее, и не учи давать советы )))

roman-yrv, insert и wysiwyg image upload дают при вставке выбор пресета imagecache, либо по умолчанию вставляют с указанным пресетом. то есть изображения буду принудительно уменьшаться до размеров указанных в пресете

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 4 сентября 2011 в 14:37

"NurOff" wrote:
Он сразу втыкает превьюшку со ссылкой на другой ресайз?

Можно указать с каким пресетом imagecache картинка будет вставляться в тексти и есть опция "pop-up", которая включает поднятие "lightbox'ов".

Аватар пользователя NurOff NurOff 4 сентября 2011 в 19:45

"<a href="mailto:v1adimir@drupal.org">v1adimir@drupal.org</a>" wrote:
Можно указать с каким пресетом imagecache картинка будет вставляться в тексти и есть опция "pop-up", которая включает поднятие "lightbox'ов".

Спасибо. За толковый и полный ответ.
Значит модуль One Click Upload - лучше.
Позволяет настраивать все. Включая какую превьюшку из ресайзов IMAGECACHE.
И предназанчет для загрузки не только картинок в пост.
И автор модуля в доступном месте.
На сайте автора есть доступная инструкция как установить и какие настройки.
Пойду посмотрю еще как работает WYSIWYG Image Upload. Для расширения кругозора.

Аватар пользователя v1adimir@drupal.org v1adimir@drupal.org 4 сентября 2011 в 20:30

"NurOff" wrote:
Значит модуль One Click Upload - лучше.

ОК. Давай, сравним. ))
"NurOff" wrote:
Позволяет настраивать все. Включая какую превьюшку из ресайзов IMAGECACHE.

WIU также позволяет выбрать какой из пресетов imagecache использовать для вставления картинки.
"NurOff" wrote:
И предназанчет для загрузки не только картинок в пост.

Это плюс, НО для специалиста. "Обычные" пользователи тогда будут вставлять всякую ахинею, типа avi и выставлять претензии, почему не играет и не поет. ))

К тому же One Click Upload зависит от SWFUpload, т.е. флеша, которому еще нужно выдать разрешение на стороне клиента для обращения к локальным файлам. И OCU официально поддерживается для IE только для версий 9+.

Для кого-то One Click Upload реально будет удобнее, но не для всех. По-моему.