Dev Mode в Figma связывает макет, спеки и выгрузку растра, но команды теряют время на «почти совпавших» пикселях: слайс на полпикселя, дробный масштаб превью и разный ICC между ноутбуком дизайнера и CI. Для фронтенда критичны предсказуемые W×H, целые @1x/@2x/@3x и единая политика sRGB. Ниже — компактная матрица 2026: таблица параметров экспорта, исполняемый чеклист пакетной приёмки на удалённом Mac mini M4 и FAQ. Общий контекст инструментов — в сравнении Figma, Sketch и пакетного PNG; цветовые режимы — в чеклисте sRGB и Display P3; пошаговый экспорт слоёв — в чеклисте экспорта Figma/Sketch.
На этой странице
Разделите роли: дизайнер фиксирует намерение (сетка, масштабы, имена), оператор или скрипт на M4 доказывает совпадение байтов и метаданных с README задания. Так вы избегаете споров «у меня в браузере ровно» без измеримых гейтов.
Таблица параметров экспорта
Используйте строки как контракт в тикете: отклонение от любой ячейки без записи в changelog считается дефектом поставки.
| Параметр | Значение по умолчанию (2026) | Зачем фронтенду |
|---|---|---|
| Масштабы растра | Только целые 1×, 2×, 3× от одного базового фрейма | Исключает «ломаные» CSS background-size и двойной субпиксельный сдвиг между платформами |
| Базовый размер | Целые px по ширине и высоте; координаты слайса на целой сетке | Ровные боксы в макете совпадают с измерениями в инспекторе и в Lighthouse без округления «на глаз» |
| Формат | PNG-24; альфа только если в спеке явно «прозрачный фон» | Меньше сюрпризов в легаси-CMS и при склейке спрайтов |
| Цвет | Документ и экспорт в логике sRGB; P3 — только с отдельным пресетом и тегом в имени | Согласованность с CSS color-gamut и маркетинговыми JPEG/PNG в одной воронке |
| Обрезка | Строго по границе компонента или фрейма экспорта; без «запаса» unless указан padding в px | Стабильные отступы в коде; меньше ручной подрезки в Figma после ревью |
| Имена файлов | латиница, нижний регистр, разделитель - или _ по гайду; суффикс @2x до расширения |
Предсказуемые импорты в bundler и автогенерация manifest |
| Аннотации Dev Mode | Критичные отступы и размеры продублировать в README рядом с ZIP; ссылка на узел фрейма в Figma | Растр остаётся источником истины, текст спеки не «плывёт» между версиями файла |
Если продукт требует и вектор, и растр, публикуйте оба артефакта с одним semver в имени пакета — иначе QA на M4 не сможет сопоставить регрессию.
Чеклист пакетной приёмки
Выполняйте пункты по порядку на удалённом Mac mini M4 (или другом закреплённом воркере Apple Silicon), чтобы среда совпадала с продовым превью Safari/Chrome на macOS.
- Целочисленный масштаб: для каждого файла вычислить ожидаемые
W = W_base × k,H = H_base × k, гдеk ∈ {1,2,3}; фактические размеры — ±0 px (не «±1 из-за ретины»). - sRGB: выборочно проверить встроенный профиль или отсутствие тега с явным sRGB в дизайне — правила те же, что в чеклисте цветового менеджмента; любой внезапный Display P3 в батче — стоп-кран до разбора ICC.
- Именование слайсов: regexp на шаблон репозитория, запрет пробелов и кириллицы в путях npm; суффикс масштаба согласован с папкой (
drawable-xxhdpiи т.д. — в маппинг-таблице, не в имени файла при конфликте). - Альфа: для иконок с прозрачностью — канал
rgbaи визуальная проверка на тёмном и светлом фоне (полосы по краям). - Байтовые гейты:
min_bytesотсекает пустые/битые файлы;max_bytesловит 16-bit или несжатые выгрузки; пороги приложить к заданию. - Лог и промоут: JSONL-строка на файл (путь, WxH, байты, pass/fail); пройденные файлы — атомарный
mvвout/ГГГГ-ММ-ДД/, провал — вquarantine/с stderr.
# Пример: сверка ширины/высоты с ожиданием (zsh, ImageMagick)
expect_w=48 expect_h=48
for f in inbox/*.png(N); do
read w h <<<$(magick identify -format "%w %h" "$f")
[[ "$w" == "$expect_w" && "$h" == "$expect_h" ]] || print "FAIL $f ${w}x${h}"
done
Такой батч хорошо сочетается с ночным прогоном на выделенном хосте: ноутбук дизайнера не простаивает на сотнях мегабайт превью, а фронтенд получает уже отфильтрованный out/.
Частые вопросы (FAQ)
Почему нельзя 1,5× или «экспорт под ширину колонки»? Дробный масштаб даёт несовпадение между Figma, браузером и нативным рендером; для маркетинга используйте отдельный артборд с целым базовым размером.
Dev Mode показывает дробные px — это баг? Часто это следствие вложенного Auto layout и зума; перед экспортом выровняйте финальный фрейм слайса к целым координатам и перепроверьте в списке слоёв.
Нужен ли ICC в каждом PNG? Договоритесь с фронтом: либо встроенный sRGB, либо последовательный «без профиля при sRGB-документе» — главное, одинаково во всём релизе, иначе визуальные регрессии на разных мониторах неизбежны.
Как не потерять аннотации при передаче только ZIP? Дублируйте ключевые числа в README_DELIVERY.md и приложите ссылку на файл Figma с версией; ZIP без текста быстро превращается в археологию.
Итог: целочисленные масштабы, жёсткая сетка, sRGB по контракту и имена слайсов по regexp дешевле на старте, чем ретушь вёрстки перед релизом. Вынесите тяжёлый батч на удалённый M4 — одна и та же команда identify/sips на воркере снимает споры о среде.
Дальнейшие шаги: удалённый Mac M4 для доставки PNG
Ознакомьтесь с главной MacPng, затем откройте аренду и покупку и тарифы и узлы — вход в личный кабинет не требуется, чтобы просмотреть планы и сравнить конфигурации. В помощи и настройке — онбординг воркера; другие матрицы доставки — в разделе Технические идеи.
Пакетная приёмка слайсов и стабильная среда macOS
Закрепите Dev Mode и батч-проверки на Mac mini M4: те же шрифты, те же гейты ICC и предсказуемые пути для скриптов — без сюрпризов между ноутбуком дизайнера и CI.