7.6
картинка
продукт
размер
Технические вопросы
7.x

Картинки в продукте.

Здравствуйте.
Подскажите пожалуйста, как реализовать функционал позволяющий видеть картинку исходного размера в продукте.
Возможно реализовать по загрузку по клику или увеличить размер картинки?

Нравится

12 комментариев

Здравствуйте!

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

Как вариант вы можете загружать картинку в деталь "Файлы и ссылки" На закладке "Файлы и примечания" продукта. В таком случае картинка будет сохранена в базе в полном размере, и по клику на ее имя будет происходить ее загрузка или открытие (в зависимости от вашего браузера).

Добрый день!

Максим, идея с файлами и примечаниями интересная, возьму на заметку.

Алексей, дело в том, что в базе (в таблице SysImage) картинки хранятся в несжатом виде, т.к. попадают туда при интеграции из другой системы средствами sql через OPENROWSET. Возможно ли это как-то использовать?

Александр, добрый день!

Идея Максима, как мне кажется, наиболее подходит для решения Вашей задачи, т.к. по сути это базовый функционал и картинка открывается в исходном несжатом виде.

Андрей, я его реализовал, по умолчанию картинка скачивается по клику. Настраивать каждый браузер на открытие - тоже не очень удобно.
Подобную реализацию не одобрили, т.к. часто нужно видеть именно картинку, которую можно рассмотреть.
Так что если есть еще какие-то идеи, буду благодарен за подсказки.

Добрый день!
Александр, есть еще 2 варианта:
1. Реализовать свою логику при клике на изображение открывать его в модальном окне. В конфигурации есть примері использования. Метод ModalBox.show() вернет контейнер, в который вы сможете отрендерить нужный вам контент.
2. Взять готовые плагины, например у jQuery, и реализовать его использование.

Добрый день, возобновлю тему. Можно ли сразу в ModalBox отрендерить картинку, без написания собственного модуля?

Добрый день!
Да, возможно. Метод show() вернет вам контейнер, а дальше можете делать с ним что угодно. Пример:
[javascript]
var container = ModalBox.show({
width: "200px",
height: "100px"
});
var imageHtml = '';
Ext.DomHelper.insertHtml("afterBegin", container.dom, imageHtml);
[/javascript]
Здесь выводится фото какого-то контакта

Спасибо, то, что нужно!

Спасибо, то, что нужно!

А как его можно корректно отмасштабировать, вне зависимости от исходных размеров?
[code]
style="max-height:100%;max-width: 100%"
[/code]
Явное указание стилей проблему не решило. По ширине фото вписывается, а по высоте обрезается. Также не удалось отцентровать фото при масштабировании по ширине.

Здравствуйте, Александр!

Пример реализации Вы можете найти в продукте Real Estate на детали "Галерея" раздела "Объекты".

Показать все комментарии