Быстрая загрузка эскизов изображений

У меня есть веб-приложение, которое будет отображать галерею миниатюр. Моя проблема в том, что некоторые изображения очень большие (например, 6000 x 6000), и мой текущий подход - загрузить изображение в тег изображения, а затем использовать css для установки максимальной ширины и максимальной высоты, что очень медленно из-за огромного изображения загружен сзади.

Какое самое простое решение в этой ситуации?

Я использую Rails, а изображения загружаются с помощью Carrierwave.


person VHanded    schedule 23.10.2013    source источник


Ответы (1)


Попробуйте просмотреть раздел эскизов изображений на странице Carrierwave github. Идея состоит в том, что при загрузке большого изображения вы можете изменить его размер и сохранить его копию. Позже вы можете предоставить уменьшенную версию изображения, чтобы значительно сократить время запроса.

Вы также можете сохранить правильное соотношение сторон в загружаемом изображении, используя 0 или nil в качестве ширины или высоты, которые вы хотите, чтобы они зависели от другого атрибута. Посмотрите здесь для получения дополнительной информации.

person jvperrin    schedule 23.10.2013
comment
Да, лучше сделать уменьшенную копию. Для таких больших картинок я бы также попытался перенести изменение размера в фоновый процесс, используя carrierwave_backgroundergem. - person Serge Vinogradoff; 23.10.2013