Адаптивные изображения для серверов на основе ruby

Я хотел бы доставлять изображения клиенту в зависимости от размера экрана пользователя, например, если у меня есть изображение с высоким разрешением и пользователь хочет просматривать его на мобильном телефоне, я не хочу отправлять изображение в полном HD, вместо этого Я хочу отправить уменьшенное изображение до размера устройства пользователя, что увеличит скорость загрузки на устройствах с низкой пропускной способностью

Есть решение для этого здесь

Adaptive Images определяет размер экрана вашего посетителя и автоматически создает, кэширует и доставляет соответствующие масштабированные версии устройства встроенных HTML-изображений вашей веб-страницы. Оно предназначено для использования с адаптивными дизайнами и в сочетании с методами Fluid Image. (Из приведенной ссылки)

Я вижу решения такого рода для php & apache на основе серверов, есть ли решение для веб-приложения, в котором есть серверы на основе ruby? gem может быть... Спасибо

2 ответа

Медиа-запросы будут работать только с фоновыми изображениями CSS.

Между прочим, решение Adaptive-Images не так сложно реализовать.

Они просто динамически подают изображения вместо веб-сервера, кэшируя адаптированные изображения, чтобы ускорить процесс и избежать потери ресурсов.

Размеры изображений и кэшируются в зависимости от значения файла cookie, который содержит разрешение запрашивающего устройства.

Сказав, что вы находитесь в Rails, сделайте следующее:

  1. Добавить эту строку JavaScript к <head> раздел в вашем макете:

    <script>document.cookie='resolution='+Math.max(screen.width,screen.height)+'; path=/‘;</script>

  2. добавить AdaptiveImagesController с действием adapt_and_serve,

  3. Давайте adapt_and_serve читать / кэшировать / адаптировать и обслуживать (с заголовком завершения в далеком будущем) файл, соответствующий каждому запросу.

  4. Добавить правило в routes.rb перехватывать запросы изображений, которые необходимо адаптировать, и направлять их в AdaptiveImagesController#adapt_and_serve

Я думаю, что ничего особенного в подаче adaptive images, Это зависит от того, как вы настроили свой интерфейс: вы используете media queries разрешить размеры экрана пользователя и определять размер изображения. Вы можете использовать Rails Framework для ваших целей наверняка. Существует множество адаптивных реализаций дизайна, которые прекрасно работают с Rails - Twitter Bootstrap - известная из них.

Другие вопросы по тегам