Сервер изображений


Сервер изображений — это программное обеспечение веб-сервера , которое специализируется на доставке (и часто изменении) изображений . Однако не все серверы изображений поддерживают HTTP и могут использоваться на веб-сайтах.

В то время как традиционные веб-серверы обычно предоставляют клиентам статические копии файлов изображений, серверы изображений обычно выполняют дополнительную обработку изображений перед обслуживанием файла. Эти функции могут включать выбор кадра/формата, изменение размера, обрезку, альфа-смешение , композицию исходных изображений, вращение, настройку цвета и фильтрацию.

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

Декларативные API (такие как RIAPI) позволяют клиенту описывать результирующие характеристики изображения, такие как желаемый размер, соотношение сторон, поворот, режимы подгонки и т. д. Порядок команд не важен — ?width=200&height=100 даст тот же результат. как? Высота = 100 и ширина = 200. Сервер может свободно объединять совместимые операции для повышения производительности.

Императивные API (такие как IIP или IIIF ) описывают операции, применяемые к изображению по порядку, предлагая пользователю больше контроля, но также и больше ответственности за вычисления.

Браузерные средства просмотра изображений с высоким разрешением обеспечивают быстрое панорамирование и масштабирование, запрашивая небольшие фрагменты (обычно квадратные файлы JPEG или PNG размером 256x256 или 512x512 пикселей), созданные из источника с высоким разрешением. Загружаются только те плитки, которые необходимы для рендеринга текущего окна просмотра пользователя и уровня масштабирования, а дополнительные запрашиваются по требованию, когда пользователь увеличивает масштаб определенных областей. Эту генерацию тайлов можно выполнить заранее и сохранить в файловой системе сервера в виде пирамиды изображений. [2] Однако это приводит к потенциально тысячам небольших файлов JPEG с соответствующими накладными расходами на хранение и управление. Сервер изображений может динамически отвечать на HTTP-запросы для плиток, генерируя HTTP-ответы (изображения плиток) на лету. Серверу требуется только одно исходное изображение с высоким разрешением. [3]