mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
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.
3.9 KiB
3.9 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Добавление рамок, отступов, скруглённых углов и падающих теней к изображениям в предсказуемом, управляемом порядке. | 8845150736a9 | human | ddccf55b02e0 |
Рамка и обрамление
Добавляйте рамки, отступы, скруглённые углы и падающие тени к изображениям. Инструмент применяет эффекты в порядке: отступ, рамка, радиус углов, затем тень.
Конечная точка API
POST /api/v1/tools/image/border
Параметры
| Параметр | Тип | Обязательный | По умолчанию | Описание |
|---|---|---|---|---|
| borderWidth | number | Нет | 10 | Толщина рамки в пикселях (от 0 до 2000) |
| borderColor | string | Нет | "#000000" |
Цвет рамки в hex (например, #FF0000) |
| padding | number | Нет | 0 | Внутренний отступ между изображением и рамкой в пикселях (от 0 до 200) |
| paddingColor | string | Нет | "#FFFFFF" |
Цвет заливки отступа в hex |
| cornerRadius | number | Нет | 0 | Радиус углов в пикселях (от 0 до 2000) |
| shadow | boolean | Нет | false |
Добавлять ли падающую тень |
| shadowBlur | number | Нет | 15 | Радиус размытия тени (от 1 до 200) |
| shadowOffsetX | number | Нет | 0 | Горизонтальное смещение тени (от -50 до 50) |
| shadowOffsetY | number | Нет | 5 | Вертикальное смещение тени (от -50 до 50) |
| shadowColor | string | Нет | "#000000" |
Цвет тени в hex |
| shadowOpacity | number | Нет | 40 | Процент непрозрачности тени (от 0 до 100) |
Пример запроса
curl -X POST http://localhost:1349/api/v1/tools/image/border \
-F "file=@photo.jpg" \
-F 'settings={"borderWidth":20,"borderColor":"#333333","cornerRadius":16,"shadow":true,"shadowBlur":25,"shadowOpacity":50}'
Пример ответа
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.png",
"originalSize": 456789,
"processedSize": 523456
}
Примечания
- Использует стандартную фабрику
createToolRoute. Принимает один файл изображения через multipart-загрузку. - Поддерживает входные форматы HEIC, RAW, PSD и SVG (автоматически декодируются).
- Порядок обработки: сначала добавляется отступ, затем оборачивается рамка, затем применяется радиус углов, затем накладывается тень.
- Когда включён
cornerRadiusилиshadow, вывод принудительно устанавливается в PNG (независимо от формата ввода) для сохранения прозрачности. Форматы с поддержкой альфа-канала (PNG, WebP, AVIF) сохраняют свой исходный формат. - Тень учитывает форму: она следует за скруглёнными углами, а не создаёт прямоугольную тень.
- Установка
borderWidthв 0 и использование толькоcornerRadius+shadowсоздаёт эффект скруглённой тени без рамки.