Search K
Коллаж / Сетка
Объединяйте несколько изображений в красивые коллажи-сетки с более чем 25 шаблонами. Поддерживаются макеты от 2 до 9 изображений с настраиваемым зазором, радиусом скругления углов, цветом фона и панорамированием/масштабированием каждой ячейки.
Конечная точка API
POST /api/v1/tools/image/collage
Параметры
| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| templateId | string | Да | - | ID макета шаблона (например 2-h-equal, 3-left-large, 4-grid, 9-grid) |
| cells | array | Нет | - | Массив настроек каждой ячейки с imageIndex, panX, panY, zoom, objectFit |
| cells[].imageIndex | integer | Да | - | Индекс изображения для размещения в этой ячейке (начиная с 0) |
| cells[].panX | number | Нет | 0 | Горизонтальное смещение панорамирования (от -100 до 100) |
| cells[].panY | number | Нет | 0 | Вертикальное смещение панорамирования (от -100 до 100) |
| cells[].zoom | number | Нет | 1 | Уровень масштабирования (от 1 до 10) |
| cells[].objectFit | string | Нет | "cover" | Как изображение заполняет ячейку: cover или contain |
| gap | number | Нет | 8 | Зазор между ячейками в пикселях (от 0 до 500) |
| cornerRadius | number | Нет | 0 | Радиус скругления углов каждой ячейки в пикселях (от 0 до 500) |
| backgroundColor | string | Нет | "#FFFFFF" | Цвет фона в виде hex или "transparent" |
| aspectRatio | string | Нет | "free" | Соотношение сторон холста: free, 1:1, 4:3, 3:2, 16:9, 9:16, 4:5 |
| outputFormat | string | Нет | "png" | Формат вывода: png, jpeg, webp, avif, jxl |
| quality | number | Нет | 90 | Качество вывода (от 1 до 100) |
Доступные шаблоны
| ID шаблона | Изображения | Макет |
|---|---|---|
2-h-equal | 2 | Два равных столбца |
2-v-equal | 2 | Две равные строки |
2-h-left-large | 2 | Слева 2/3, справа 1/3 |
2-h-right-large | 2 | Слева 1/3, справа 2/3 |
3-left-large | 3 | Большое слева, два в стопке справа |
3-right-large | 3 | Два в стопке слева, большое справа |
3-top-large | 3 | Большое сверху, два столбца снизу |
3-h-equal | 3 | Три равных столбца |
3-v-equal | 3 | Три равные строки |
4-grid | 4 | Сетка 2x2 |
4-left-large | 4 | Большое слева, три в стопке справа |
4-top-large | 4 | Большое сверху, три столбца снизу |
4-bottom-large | 4 | Три столбца сверху, большое снизу |
5-top2-bottom3 | 5 | Два сверху, три снизу |
5-top3-bottom2 | 5 | Три сверху, два снизу |
5-left-large | 5 | Большое слева, четыре в стопке справа |
5-center-large | 5 | Большое в центре, четыре по углам |
6-grid-2x3 | 6 | 2 столбца x 3 строки |
6-grid-3x2 | 6 | 3 столбца x 2 строки |
6-top-large | 6 | Большое сверху, пять столбцов снизу |
7-mosaic | 7 | Мозаичный макет |
8-mosaic | 8 | Мозаичный макет |
9-grid | 9 | Сетка 3x3 |
Пример запроса
bash
curl -X POST http://localhost:1349/api/v1/tools/image/collage \
-F "[email protected]" \
-F "[email protected]" \
-F "[email protected]" \
-F "[email protected]" \
-F 'settings={"templateId":"4-grid","gap":12,"cornerRadius":8,"backgroundColor":"#F5F5F5","outputFormat":"png","quality":90}'Пример ответа
json
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/collage.png",
"originalSize": 2456789,
"processedSize": 1823456
}Примечания
- Загрузите несколько файлов изображений в multipart-запросе. Изображения назначаются ячейкам шаблона в порядке загрузки.
- Если загружено больше изображений, чем поддерживает шаблон, лишние изображения игнорируются.
- Поддерживаются входные форматы HEIC, RAW, PSD и SVG (декодируются автоматически).
- Базовый размер холста составляет 2400px по самой длинной стороне, масштабируемый в соответствии с выбранным соотношением сторон.
- Когда
aspectRatioимеет значение"free", холст по умолчанию использует 4:3 (2400x1800). - Значения
panX/panYкаждой ячейки сдвигают окно обрезки внутри ячейки. Значение 100 полностью смещает к одному краю, -100 к другому. - Цвет фона
"transparent"сохраняется только при выходных форматахpng,webpилиavif.
