Исходник — репортажное фото из мессенджера или скан: приглушённая палитра, смешанное освещение, средние тона. И главная особенность: у файла нет встроенного профиля. Совсем. Задача — подготовить его к офсетной печати на немелованной бумаге по профилю ISO Uncoated (FOGRA47), TAC ≤ 280%.
Моменты, которые нельзя пропустить:
1. Untagged-источник — файл без профиля нельзя просто «конвертировать в CMYK»: неизвестно, из какого пространства конвертировать. Бот анализирует признаки файла и принимает обоснованное допущение — sRGB или Adobe RGB — явно помечая результат как *provisional*.
2. Assign ≠ Convert — назначить профиль и конвертировать по профилю — две разные операции с разным результатом. Здесь нужно сначала установить источник, потом конвертировать. Перепутать их — значит получить сдвинутые цвета и никакой диагностики об этом.
3. TVI / растискивание — немелованная бумага впитывает краску иначе: точка на ней растёт сильнее, чем на мелованной. Бот учитывает кривые TVI для uncoated, не компенсируя неизвестное состояние печати произвольными правками.
4. TAC ≤ 280% — лимит здесь жёстче, чем для мелованной (там было 300%). Немелованная бумага хуже справляется с большим количеством краски в тенях. Бот проверяет и держит лимит.
5. Min dot для uncoated — минимальная воспроизводимая точка на немелованной бумаге крупнее. Тонкие, едва заметные тона легко «обрубить» грубым порогом. Бот аккуратно учитывает это по каналам, чтобы не потерять текстуры ткани и дерева.
6. Контроль разрешения — такие файлы часто приходят не в 300 dpi. Бот фиксирует фактическое разрешение и принимает задокументированное решение: либо ресемплинг с указанием метода, либо метка о том, что разрешение недостаточное.
Результат: CMYK-файл под uncoated-условие, TAC ≤ 280%, отчёт с допущением по источнику и пометкой *provisional*, решение по разрешению.