Документация

Конвертер и очередь Про

Два контура «Оттиска»: бесплатный конвертер, который целиком выполняется в браузере, и облачная очередь «Оттиск Про» для тиражных задач — с собственным API для клиентов по заявке.

Бесплатный конвертер

Конвертер на главной странице работает локально: файл читается в браузере, изображение перерисовывается на canvas с нужными параметрами, результат собирается в новый файл и скачивается на ваше устройство. На сторону не уходит ни байта — это можно проверить в инструментах разработчика: во время конвертации сетевых запросов нет.

Вход и выход

  • Вход: PNG, JPEG, WebP — растровые макеты и иллюстрации.
  • Выход: PNG (без потерь), JPEG и WebP (с настраиваемым качеством 10–100 %).
  • Размер: в пикселях или в миллиметрах с указанием DPI; пропорции можно держать зафиксированными.
  • Предел браузера: до 8000 px по стороне. Больше — в очередь Про.

Миллиметры в пиксели

Размер в пикселях считается по классической препресс-формуле:

px = mm ÷ 25.4 × DPI

// визитка 90×50 мм при 300 DPI:
90 ÷ 25.4 × 300 ≈ 1063 px
50 ÷ 25.4 × 300 ≈  591 px
Цветовая модель бесплатного конвертера — sRGB, как у любого браузера. ICC-профили, плашки Pantone и настоящая цветопроба — задачи очереди Про.

«Оттиск Про»: облачная очередь

Про принимает то, что браузер не тянет: пакеты из сотен макетов, распознавание сканов (OCR), приведение офисных документов к печатному PDF, работу с цветовыми профилями и хранение джоб. Задача встаёт в очередь, выполняется на стороне бюро, прогресс и результат видны в кабинете.

Доступ к очереди — по заявке: условия на странице тарифов, вход — через кабинет.

API очереди

Клиентам Про доступен программный интерфейс очереди. Он построен на GET-запросах: длинный запрос держит поток прогресса, короткие досылают данные задачи. Ниже — справочная форма интерфейса; реквизиты и точные лимиты выдаются вместе с доступом.

GET /api/v1/jobs/{id}/events

Поток прогресса джобы — одно длинное соединение на задачу, ответ в формате text/event-stream (Server-Sent Events). События: постановка в очередь, доли выполнения по этапам, готовность результата, ошибка.

event: queued
data: {"job":"8f2c","position":3}

event: progress
data: {"job":"8f2c","percent":42,"stage":"raster"}

event: done
data: {"job":"8f2c","result":"ready","pages":12}
GET /api/v1/jobs/{id}/chunks

Досылка исходника в джобу: тело запроса несёт очередной фрагмент файла или JSON-команду для очереди. Идентификатор джобы — в пути, смещение и контрольные суммы — в полях команды. Так кабинет передаёт крупные макеты, не открывая отдельных загрузочных эндпоинтов.

// тело запроса — JSON-команда очереди:
{"op":"append","offset":65536,"crc32":"9b2f41ac"}
// либо двоичный фрагмент исходника — как есть

Авторизация

  • Сессионная cookie кабинета — выдаётся при входе после одобрения заявки.
  • CSRF-токен кабинета — передаётся в заголовке каждого запроса к API; защищает очередь от подделанных обращений.
  • Очередь персональная: джобы и результаты одной заявки не видны другим.
Без действующего доступа Про обращения к /api/v1/jobs/… не обслуживаются. Заявка на доступ — через кабинет.

Поддержка форматов

  • Бесплатно, в браузере: PNG, JPEG, WebP — сжатие, смена формата, точный размер.
  • В очереди Про: PDF (склейка, разрез, печать-раскладка), офисные документы в печатный PDF, сканы с распознаванием, файлы с ICC-профилями.