mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
2.9 KiB
2.9 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Menggabungkan gambar berdampingan, ditumpuk, atau dalam grid dengan kontrol atas perataan, celah, tepi, dan mode pengubahan ukuran. | 670c5cc944b1 | human | 22d6b7c3538e |
Gabungkan Gambar
Menggabungkan beberapa gambar berdampingan, ditumpuk secara vertikal, atau disusun dalam grid. Mendukung perataan, celah, tepi, radius sudut, dan beberapa mode pengubahan ukuran.
API Endpoint
POST /api/v1/tools/image/stitch
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| direction | string | No | "horizontal" |
Arah tata letak: horizontal, vertical, grid |
| gridColumns | integer | No | 2 | Jumlah kolom ketika direction adalah grid (2 hingga 100) |
| resizeMode | string | No | "fit" |
Cara gambar diubah ukurannya: fit, original, stretch, crop |
| alignment | string | No | "center" |
Perataan sumbu-silang: start, center, end |
| gap | number | No | 0 | Celah antar gambar dalam piksel (0 hingga 1000) |
| border | number | No | 0 | Lebar tepi luar dalam piksel (0 hingga 500) |
| cornerRadius | number | No | 0 | Radius sudut yang diterapkan pada keluaran akhir (0 hingga 500) |
| backgroundColor | string | No | "#FFFFFF" |
Warna latar belakang/tepi sebagai hex (mis. #FF0000) |
| format | string | No | "png" |
Format keluaran: png, jpeg, webp, avif, jxl |
| quality | number | No | 90 | Kualitas keluaran (1 hingga 100) |
Example Request
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"}'
Example Response
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/stitch.png",
"originalSize": 1234567,
"processedSize": 987654
}
Notes
- Memerlukan setidaknya 2 gambar. Unggah beberapa file gambar dalam permintaan multipart.
- Mendukung format masukan HEIC, RAW, PSD, dan SVG (otomatis didekode).
- Mode pengubahan ukuran:
fit- Menskalakan gambar agar sesuai dengan dimensi terkecil di sepanjang sumbu penggabungan.original- Mempertahankan ukuran asli (dapat menghasilkan tepi yang tidak rata).stretch- Memaksa gambar agar sesuai dengan dimensi terkecil tanpa mempertahankan rasio aspek.crop- Memangkas-menutupi gambar agar sesuai dengan dimensi terkecil.
- Dalam mode
grid, sel diukur sesuai dimensi median dari semua gambar. cornerRadiusditerapkan ke seluruh keluaran akhir, bukan gambar individual.- Ukuran kanvas dibatasi oleh konfigurasi server
MAX_CANVAS_PIXELSuntuk mencegah kehabisan memori.