This page was machine-translated. Spotted a mistake?Help improve it.
Skip to content

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

ParametrTypWymaganyDomyślnyOpis
columnsintegerNie3Liczba kolumn do podziału (1 do 100)
rowsintegerNie3Liczba wierszy do podziału (1 do 100)
tileWidthintegerNie-Szerokość kafelka w pikselach (min 10). Zastępuje columns, gdy ustawione są jednocześnie tileWidth i tileHeight.
tileHeightintegerNie-Wysokość kafelka w pikselach (min 10). Zastępuje rows, gdy ustawione są jednocześnie tileWidth i tileHeight.
outputFormatstringNie"original"Format wyjściowy kafelków: original, png, jpg, webp, avif, jxl
qualitynumberNie90Jakość wyjściowa dla formatów stratnych (1 do 100)

Przykładowe żądanie

bash
curl -X POST http://localhost:1349/api/v1/tools/image/split \
  -F "[email protected]" \
  -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 tileWidth i tileHeight, mają one priorytet nad columns/rows. Wymiary siatki są obliczane jako ceil(imageWidth / tileWidth) i ceil(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 --output z curl, aby zapisać plik.