Что делать с ограничениями размера загружаемых изображений?
На днях я пытался загрузить скан лицензии нашей компании в корпоративную систему. Забуксовал на полдня. Окно загрузки постоянно показывало "Размер файла превышает допустимое значение", а исходное изображение было около 6MB. Попробовал загружать несколько раз, все без толку. Был доволен раздражен и просто подумал: что дальше? Позже понял, что это на самом деле довольно распространённая проблема — почти все платформы имеют какие-то ограничения на размер.
Почему это постоянно происходит?
Оказывается, практически в каждой системе встроены ограничения на загрузку. Email обычно ограничивает около 20-25MB, облачное хранилище может быть выше, но рабочие системы и официальные платформы обычно очень строги — часто всего 2-5MB. Понимаю со стороны сервера, большие файлы действительно едят полосу пропускания. Но со стороны пользователя иногда не избежишь — особенно если фотографируешь на телефон.
Прямое решение — сжатие изображения
Если честно, решение этой проблемы сводится к одному: сжать изображение. Мой подход теперь — обработать изображение перед загрузкой, вместо того чтобы бесконечно нажимать кнопку загрузки и надеяться на лучшее.
Есть на самом деле только два способа сжать изображение. Либо уменьшить размеры, либо снизить качество. Можешь сделать одно или другое, либо и то, и другое вместе. Я обычно просто изменяю размеры самостоятельно, если только не нужно сохранить много деталей.
Как с той фотографией лицензии, которую я упомянул — она была снята на мой телефон, поэтому разрешение было очень высоким. Я просто изменил размер примерно до 1920 пикселей в ширину с помощью онлайн-инструмента, и вот — с 6MB упал до 1.5MB. После этого легко загружается. И честно, после изменения размера он выглядел ровно так же для невооружённого глаза.
Поиск подходящего инструмента
Инструментов сжатия много. Photoshop — самый профессиональный, но мой компьютер его не потянет. Онлайн-инструменты вроде TinyPNG очень простые — просто перетащи и отпусти, и он автоматически сжимается — но в том, что ты не имеешь контроль над результатом. Иногда сжимает слишком сильно, иногда всё ещё слишком большой, и ты скачиваешь туда-сюда.
Мне нужно было что-то более простое: просто скажи инструменту "мне нужен 2MB" и он автоматически выбирает параметры. Таким образом я не загружу, не проверю, не удалю и не переделаю это пять раз подряд.
Потом я обнаружил ExactKB и он на самом деле работает неплохо. Ты устанавливаешь целевой размер файла и он автоматически корректирует параметры для тебя. Загружаешь изображение, вводишь нужный размер, кликаешь — и готово. Он также даёт несколько опций — можешь выбрать только изменение размеров, только качество или оба вместе. Я обычно выбираю оба, так как эффект сжатия лучше.
Есть также полезная маленькая функция, где ты можешь установить минимальный предел размеров. Таким образом твоё изображение не будет выглядеть как почтовая марка. Я обычно устанавливаю ширину выше 1200 пикселей, чтобы изображение было читаемым.
Вернёмся к реальности
В конце концов, решение проблем ограничений размера загружаемых изображений — это просто поиск способа сделать файл меньше. Звучит достаточно просто, но на практике ты можешь попробовать несколько инструментов, прежде чем найдёшь подходящий под твой рабочий процесс. Кому-то подходит полностью автоматический подход TinyPNG, а кому-то, как мне, нужна немного большая контроль. Нет единственного "лучшего" решения — это зависит от того, что тебе действительно нужно.
Я использую такой подход для работы с загрузкой изображений и это экономит мне много времени. Раньше приходилось загружать одно и то же изображение пять-шесть раз, пока оно наконец не прошло, но теперь я просто обрабатываю его на своём компьютере первым, и он проходит с первой попытки. Если ты также регулярно сталкиваешься с этой проблемой, может быть стоит попробовать этот метод.