Files
SnapOtter/apps/docs/pl/tools/image/svg-to-raster.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.1 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Konwertuj pliki SVG do PNG, JPEG, WebP, AVIF, TIFF, GIF, HEIF lub JXL w niestandardowej rozdzielczości i DPI, z obsługą przetwarzania wsadowego. cf36830f8797 human f2c4302cb6d9

SVG do rastra

Konwertuj pliki SVG do rastrowych formatów obrazu (PNG, JPEG, WebP, AVIF, TIFF, GIF, HEIF lub JXL) w niestandardowej rozdzielczości i DPI. Obsługuje również konwersję wsadową wielu plików SVG.

Punkt końcowy API

POST /api/v1/tools/image/svg-to-raster

Parametry

Parametr Typ Wymagany Domyślny Opis
width integer Nie - Docelowa szerokość w pikselach (1 do 65536). Zachowuje proporcje, jeśli ustawiono tylko jeden wymiar.
height integer Nie - Docelowa wysokość w pikselach (1 do 65536). Zachowuje proporcje, jeśli ustawiono tylko jeden wymiar.
dpi integer Nie 300 DPI renderowania, kontroluje bazową gęstość rasteryzacji (36 do 2400)
quality number Nie 90 Jakość wyjściowa dla formatów stratnych (1 do 100)
backgroundColor string Nie "#00000000" Kolor tła w formacie hex (6 lub 8 znaków, wersja 8-znakowa zawiera kanał alfa)
outputFormat string Nie "png" Format wyjściowy: png, jpg, webp, avif, tiff, gif, heif, jxl

Przykładowe żądanie

curl -X POST http://localhost:1349/api/v1/tools/image/svg-to-raster \
  -F "file=@logo.svg" \
  -F 'settings={"width":1024,"dpi":300,"outputFormat":"png","backgroundColor":"#FFFFFF"}'

Przykładowa odpowiedź

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/logo.png",
  "previewUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/preview.webp",
  "originalSize": 12345,
  "processedSize": 67890
}

Punkt końcowy przetwarzania wsadowego

POST /api/v1/tools/image/svg-to-raster/batch

Konwertuj wiele plików SVG w jednym żądaniu. Zwraca archiwum ZIP.

Dodatkowe parametry wsadowe

Parametr Typ Wymagany Domyślny Opis
clientJobId string Nie - Opcjonalny identyfikator zadania dostarczony przez klienta do śledzenia postępu (maks. 128 znaków)

Przykładowe żądanie wsadowe

curl -X POST http://localhost:1349/api/v1/tools/image/svg-to-raster/batch \
  -F "file=@icon1.svg" \
  -F "file=@icon2.svg" \
  -F "file=@icon3.svg" \
  -F 'settings={"width":512,"outputFormat":"png","dpi":150}'

Odpowiedź wsadowa

Punkt końcowy przetwarzania wsadowego przesyła strumieniowo plik ZIP bezpośrednio z nagłówkami:

  • Content-Type: application/zip
  • X-Job-Id: <jobId>
  • X-File-Results: <url-encoded JSON mapping of index to filename>

Uwagi

  • Przyjmuje wyłącznie pliki SVG i SVGZ (waliduje zawartość, nie tylko rozszerzenie). SVGZ jest automatycznie dekompresowany.
  • Zawartość SVG jest oczyszczana przed renderowaniem, aby zapobiec atakom XSS i ładowaniu zasobów zewnętrznych.
  • Ustawienie dpi kontroluje gęstość, z jaką SVG jest rasteryzowany. Wyższe DPI daje większe wymiary pikselowe z tego samego widoku SVG.
  • Gdy podane są jednocześnie width i height, obraz jest skalowany za pomocą fit: inside (zachowuje proporcje w granicach).
  • previewUrl jest dołączany do odpowiedzi dla formatów, których przeglądarki nie mogą natywnie wyświetlić (TIFF, HEIF). Podgląd to miniatura WebP o rozmiarze 1200px.
  • Domyślne tło #00000000 jest całkowicie przezroczyste. Ustaw #FFFFFF dla białego tła (przydatne przy wyjściu JPEG, który nie obsługuje przezroczystości).
  • Przetwarzanie wsadowe respektuje konfigurację serwera MAX_BATCH_SIZE i wykorzystuje współbieżnych pracowników dla wydajności.
  • Postęp operacji wsadowych można śledzić przez SSE pod /api/v1/jobs/:jobId/progress.