sergeypay Опубликовано 2 марта, 2016 Жалоба Поделиться Опубликовано 2 марта, 2016 (изменено) Как узнать размер ширины и высоты изображения? пример <img src="{$product->image->filename|resize:800:600:w}" width="{$product->image->filename|size_width}px" результат -> 800px height="{$product->image->filename|size_height}px" результат -> 523px /> нигде не могу найти (( Изменено 2 марта, 2016 пользователем sergeypay Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 2 марта, 2016 Жалоба Поделиться Опубликовано 2 марта, 2016 Такой простой способ вряд ли найдете.Когда обрабатывается шаблон, в принципе НЕИЗВЕСТНО про картинку ничего. Она на тот момент в реальности может даже не существовать, а динамически создастся ПОСЛЕ.Для случая, когда она существует, надо специально что-то программировать. Цитата Ссылка на сообщение Поделиться на другие сайты
sergeypay Опубликовано 2 марта, 2016 Автор Жалоба Поделиться Опубликовано 2 марта, 2016 кое-что нашел с доработок http://old.webasyst.ru/forum/viewtopic.php?id=12697#p76952 я так понимаю это нужно в обработку api/Image.php пихать или ресайза? Цитата Ссылка на сообщение Поделиться на другие сайты
Kors Опубликовано 2 марта, 2016 Жалоба Поделиться Опубликовано 2 марта, 2016 Мне кажется, надо скорее Smarty модификатор создавать. Но может, и Вашим способом выйдет. Пробуйте "пихать"... Цитата Ссылка на сообщение Поделиться на другие сайты
Решение sergeypay Опубликовано 3 марта, 2016 Автор Решение Жалоба Поделиться Опубликовано 3 марта, 2016 (изменено) Пришлось переписывать функцию {html_image} но все отлично получилось и мои задачи полностью удовлетворяет. Единственный вопрос знает кто, как проверить сильно ли данный способ загружает сервер? т.к. беспокоит тех замечание: Техническое Замечание{html_image} требует обращение к диску для чтения изображения и вычисления его размеров. Если не используется кэширование шаблонов, то тэг {html_image} лучше не использовать, а вставлять статичные тэги изображений для достижения оптимального быстродействия.http://www.smarty.net/docsv2/ru/language.function.html.image.tpl Выкладываю решение может кому-то пригодится, или кто захочет доработать. Единственное замечание! Нужно чтобы всегда изображение находилось на сервере, если будет битая ссылка на изображение, или картинка не будет найдена по отправляемому пути, выдаст на экране СТРОКУ С ОШИБКОЙ! Как использовать? Скачиваете файл Smarty_function.picsize.rar пихаем в папку Smarty\libs\plugins\function.picsize.php вызываем в шаблоне // по умолчанию {picsize file=$image|resize:300:200:w} результат -> {width="300" height="294"} // то что мне требовалось, вывод только цифр {picsize file=$image|resize:300:200:w width="size"} результат -> {300} {picsize file=$image|resize:300:200:w height="size"} результат -> {294} // одновременный вызов width="size" и height="size" запрещен! {picsize file=$image|resize:300:200:w width="size" height="size"} результат -> {null} Дополнительные возможности // присваиваем альт {picsize file=$image|resize:300:200:w alt="Описание"} результат -> {alt="Описание" width="300" height="294"} // Убираем ширину но вызываем html тег высоты {picsize file=$image|resize:300:200:w width=""} результат -> {height="294"} // задаем свою высоту {picsize file=$image|resize:300:200:w width="235"} результат -> {width="235" height="294"} Изменено 3 марта, 2016 пользователем sergeypay Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.