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.
2.6 KiB
2.6 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Podziel jeden obraz na kafelki siatki według wierszy i kolumn lub według rozmiaru w pikselach, zwracane jako archiwum ZIP. | 57a2e11e7cce | human | fe0c6f88ea40 |
Dzielenie obrazu
Podziel pojedynczy obraz na kafelki siatki według liczby kolumn/wierszy lub według konkretnych wymiarów w pikselach. Zwraca archiwum ZIP zawierające wszystkie kafelki.
Punkt końcowy API
POST /api/v1/tools/image/split
Parametry
| Parametr | Typ | Wymagany | Domyślny | Opis |
|---|---|---|---|---|
| columns | integer | Nie | 3 | Liczba kolumn do podziału (1 do 100) |
| rows | integer | Nie | 3 | Liczba wierszy do podziału (1 do 100) |
| tileWidth | integer | Nie | - | Szerokość kafelka w pikselach (min 10). Zastępuje columns, gdy ustawione są jednocześnie tileWidth i tileHeight. |
| tileHeight | integer | Nie | - | Wysokość kafelka w pikselach (min 10). Zastępuje rows, gdy ustawione są jednocześnie tileWidth i tileHeight. |
| outputFormat | string | Nie | "original" |
Format wyjściowy kafelków: original, png, jpg, webp, avif, jxl |
| quality | number | Nie | 90 | Jakość wyjściowa dla formatów stratnych (1 do 100) |
Przykładowe żądanie
curl -X POST http://localhost:1349/api/v1/tools/image/split \
-F "file=@large-image.png" \
-F 'settings={"columns":3,"rows":3,"outputFormat":"png"}' \
--output split-tiles.zip
Przykładowa odpowiedź
Odpowiedź jest przesyłana strumieniowo bezpośrednio jako plik ZIP z Content-Type: application/zip. Nazwa pliku ma format split-<jobId>.zip.
Każdy kafelek wewnątrz ZIP jest nazwany <originalBaseName>_r<row>_c<col>.<ext> (np. photo_r1_c1.png, photo_r2_c3.webp).
Uwagi
- Przyjmuje pojedynczy plik obrazu.
- Obsługuje formaty wejściowe HEIC, RAW, PSD i SVG (automatycznie dekodowane).
- Gdy podane są jednocześnie
tileWidthitileHeight, mają one priorytet nadcolumns/rows. Wymiary siatki są obliczane jakoceil(imageWidth / tileWidth)iceil(imageHeight / tileHeight). - Kafelki brzegowe (najbardziej wysunięta w prawo kolumna, dolny wiersz) mogą być mniejsze niż określony rozmiar kafelka, jeśli wymiary obrazu nie dzielą się równo.
- Maksymalny rozmiar siatki jest ograniczony do 100x100 (10 000 kafelków).
- Odpowiedź przesyła ZIP strumieniowo bezpośrednio, więc nie ma treści odpowiedzi JSON. Użyj
--outputz curl, aby zapisać plik.