Files
SnapOtter/apps/docs/nl/tools/image/optimize-for-web.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

3.5 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Optimaliseer afbeeldingen voor levering op het web met formaatconversie, kwaliteitsbeheer, verkleinen en het strippen van metadata. c327bbbce768 human 6ed64a89617f

Optimize for Web

Optimaliseer afbeeldingen voor levering op het web in één stap. Combineert formaatconversie, kwaliteitsaanpassing, optioneel verkleinen, progressieve codering en het strippen van metadata.

API Endpoint

POST /api/v1/tools/image/optimize-for-web

Accepteert multipart form data met een afbeeldingsbestand en een JSON settings-veld.

Er is ook een live-voorbeeld-endpoint beschikbaar op POST /api/v1/tools/image/optimize-for-web/preview, die de verwerkte afbeelding rechtstreeks als binair teruggeeft (zonder werkruimte aan te maken) voor het in realtime afstemmen van parameters.

Parameters

Parameter Type Vereist Standaard Beschrijving
format string Nee "webp" Uitvoerformaat: webp, jpeg, avif, png, jxl
quality number Nee 80 Uitvoerkwaliteit (1-100)
maxWidth number Nee - Maximale breedte in pixels. De afbeelding wordt verkleind als deze breder is.
maxHeight number Nee - Maximale hoogte in pixels. De afbeelding wordt verkleind als deze hoger is.
progressive boolean Nee true Progressieve/interlaced codering inschakelen
stripMetadata boolean Nee true EXIF-, GPS-, ICC- en XMP-metadata verwijderen

Example Request

curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"format": "webp", "quality": 75, "maxWidth": 1920}'

Optimaliseren voor AVIF met agressieve compressie:

curl -X POST http://localhost:1349/api/v1/tools/image/optimize-for-web \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"format": "avif", "quality": 50, "maxWidth": 1200, "maxHeight": 800}'

Example Response

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.webp",
  "originalSize": 4500000,
  "processedSize": 320000
}

Preview Endpoint Response

Het voorbeeld-endpoint (/api/v1/tools/image/optimize-for-web/preview) geeft de binaire afbeelding rechtstreeks terug met informatieve headers:

  • X-Original-Size - Oorspronkelijke bestandsgrootte in bytes
  • X-Processed-Size - Verwerkte bestandsgrootte in bytes
  • X-Output-Filename - URL-gecodeerde uitvoerbestandsnaam

Notes

  • Deze tool is ontworpen als een alles-in-één optimalisatiepijplijn voor webassets. Deze verzorgt formaatconversie, kwaliteitsafstemming, het begrenzen van de maximale afmetingen en het verwijderen van metadata in één keer.
  • De extensie van de uitvoerbestandsnaam wordt bijgewerkt om overeen te komen met het gekozen formaat.
  • JXL-codering (JPEG XL) gebruikt een gespecialiseerde CLI-encoder. De afbeelding wordt eerst verwerkt als PNG en vervolgens gecodeerd naar JXL.
  • Progressieve codering verbetert de waargenomen laadtijd voor JPEG en PNG doordat browsers een voorbeeld van lage kwaliteit kunnen renderen voordat de volledige afbeelding is geladen.
  • Het voorbeeld-endpoint is lichter (geen werkruimte-/job-aanmaak) en is bedoeld voor de UI van de frontend voor het in realtime afstemmen van parameters.