Какие форматы фотографий допустимы?
Что проверяют
Вопрос с подвохом: хороший ответ начинается с «это определяют требования», а не со списка форматов. Интервьюер смотрит, уточните ли вы контекст (аватар, скан документа, галерея товаров) и что будете проверять кроме расширения. Следом часто спрашивают, как вы протестируете фото, снятое на iPhone.
Как отвечать
Сначала вопросы к требованиям: какие форматы, максимальный вес, минимальное и максимальное разрешение, пропорции, что система делает с фото дальше (обрезает, сжимает, конвертирует). Затем покажите, какие форматы реально приходят от пользователей:
- JPEG: основной формат фото, внутри часто EXIF с ориентацией, моделью камеры и координатами;
- PNG: скриншоты и картинки с прозрачностью, для фото тяжёлый;
- HEIC/HEIF: формат по умолчанию на iPhone. Браузер на iOS при загрузке через форму нередко сам конвертирует его в JPEG, а мобильное приложение или десктоп отправят исходный HEIC;
- WebP и AVIF: картинки, сохранённые из браузера, часто оказываются именно такими;
- GIF и анимированный WebP: формально картинка, но с несколькими кадрами. Нужно понять, что станет с анимацией.
Проверки, характерные именно для фото:
- ориентация: вертикальный снимок с тегом EXIF Orientation не должен лечь на бок после обработки;
- метаданные: GPS-координаты из EXIF обычно вырезают перед публикацией, это вопрос приватности;
- прозрачность: PNG с прозрачным фоном при конвертации в JPEG не должен получить чёрный фон;
- цвет: JPEG в CMYK из полиграфии и фото с профилем Display P3 не должны становиться блёклыми или кислотными;
- размеры: огромное разрешение при маленьком весе, картинка 1×1, панорама с экстремальными пропорциями.
Где спотыкаются
Перечисляют форматы из учебника, включая BMP и TIFF, и ни разу не спрашивают, где и зачем загружается фото.
Тестируют только на картинках из интернета. Настоящие снимки с телефона несут EXIF и приходят в HEIC, и именно они ломают превью.
Проверяют, что файл загрузился, но не смотрят на результат: обрезку, качество после пережатия, миниатюры разных размеров на разных экранах.