Files
SnapOtter/apps/docs/ru/tools/image/stitch.md
T
SnapOtterandGitHub 4963ab3bbd feat(docs-i18n): translate all documentation into 20 languages
All 181 docs markdown files translated into 20 languages (apps/docs/<locale>/**). Companion to the i18n code PR; admin-merged because the file count exceeds GitHub's per-PR CI trigger limit. Validated by pnpm i18n:check (all surfaces, 0 stale/missing) and a clean all-locale docs build.
2026-07-11 13:52:47 +08:00

4.2 KiB
Raw Blame History

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Соединение изображений бок о бок, стопкой или в сетку с управлением выравниванием, промежутками, границами и режимом масштабирования. 39333210505a human cd641f80bd64

Сшивание / Объединение

Соедините несколько изображений бок о бок, вертикально стопкой или в виде сетки. Поддерживает выравнивание, промежуток, границу, радиус скругления углов и несколько режимов масштабирования.

Конечная точка API

POST /api/v1/tools/image/stitch

Параметры

Параметр Тип Обязательный По умолчанию Описание
direction string Нет "horizontal" Направление компоновки: horizontal, vertical, grid
gridColumns integer Нет 2 Количество столбцов, когда direction равно grid (от 2 до 100)
resizeMode string Нет "fit" Как масштабируются изображения: fit, original, stretch, crop
alignment string Нет "center" Выравнивание по поперечной оси: start, center, end
gap number Нет 0 Промежуток между изображениями в пикселях (от 0 до 1000)
border number Нет 0 Ширина внешней границы в пикселях (от 0 до 500)
cornerRadius number Нет 0 Радиус скругления углов, применяемый к итоговому выводу (от 0 до 500)
backgroundColor string Нет "#FFFFFF" Цвет фона/границы в шестнадцатеричном формате (например, #FF0000)
format string Нет "png" Формат вывода: png, jpeg, webp, avif, jxl
quality number Нет 90 Качество вывода (от 1 до 100)

Пример запроса

curl -X POST http://localhost:1349/api/v1/tools/image/stitch \
  -F "file=@image1.png" \
  -F "file=@image2.png" \
  -F "file=@image3.png" \
  -F 'settings={"direction":"horizontal","resizeMode":"fit","gap":10,"backgroundColor":"#FFFFFF","format":"png"}'

Пример ответа

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/stitch.png",
  "originalSize": 1234567,
  "processedSize": 987654
}

Примечания

  • Требуется не менее 2 изображений. Загрузите несколько файлов изображений в multipart-запросе.
  • Поддерживает входные форматы HEIC, RAW, PSD и SVG (автоматически декодируются).
  • Режимы масштабирования:
    • fit - Масштабирует изображения под наименьший размер вдоль оси соединения.
    • original - Сохраняет исходные размеры (может дать неровные края).
    • stretch - Принудительно приводит изображения к наименьшему размеру без сохранения соотношения сторон.
    • crop - Обрезает изображения по методу cover под наименьший размер.
  • В режиме grid ячейки задаются по медианным размерам всех изображений.
  • cornerRadius применяется ко всему итоговому выводу, а не к отдельным изображениям.
  • Размер холста ограничен конфигурацией сервера MAX_CANVAS_PIXELS для предотвращения исчерпания памяти.