Files
SnapOtter/apps/docs/sv/tools/image/compose.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.3 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
Skikta bilder med position, opacitet och blandningslägen för komposition. c5d09eb13fde human df4f410a8045

Bildkomposition

Lägg en överliggande bild ovanpå en basbild med konfigurerbar position, opacitet och blandningsläge. Användbart för att komponera logotyper, grafik eller kombinera flera bilder.

API-slutpunkt

POST /api/v1/tools/image/compose

Tar emot multipart-formulärdata med två bildfiler och ett JSON-fält settings.

Parametrar

Parameter Typ Obligatorisk Standard Beskrivning
x number Nej 0 Horisontell förskjutning av överlägget från det övre vänstra hörnet i pixlar (min 0)
y number Nej 0 Vertikal förskjutning av överlägget från det övre vänstra hörnet i pixlar (min 0)
opacity number Nej 100 Överläggets opacitet i procent (0 till 100)
blendMode string Nej "over" Blandningsläge för komposition

Blandningslägen

Värde Beskrivning
over Normalt överlägg (standard)
multiply Mörka genom att multiplicera pixelvärden
screen Ljusa genom att invertera, multiplicera och invertera igen
overlay Kombinerar multiplicera och rastrera baserat på basens ljusstyrka
darken Behåll den mörkare pixeln från varje lager
lighten Behåll den ljusare pixeln från varje lager
hard-light Starkt kontrastöverlägg
soft-light Subtilt kontrastöverlägg
difference Absolut skillnad mellan lager
exclusion Liknar skillnad men med lägre kontrast

Filfält

Fältnamn Obligatorisk Beskrivning
file Ja Bas-/bakgrundsbilden
overlay Ja Överläggs-/förgrundsbilden

Exempelbegäran

curl -X POST http://localhost:1349/api/v1/tools/image/compose \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@background.jpg" \
  -F "overlay=@graphic.png" \
  -F 'settings={"x": 100, "y": 50, "opacity": 80, "blendMode": "over"}'

Med blandningsläget multiplicera:

curl -X POST http://localhost:1349/api/v1/tools/image/compose \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F "overlay=@texture.jpg" \
  -F 'settings={"x": 0, "y": 0, "opacity": 50, "blendMode": "multiply"}'

Exempelsvar

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/background.jpg",
  "originalSize": 3200000,
  "processedSize": 3450000
}

Anteckningar

  • Båda bilderna valideras och avkodas (HEIC, RAW, PSD, SVG stöds) före komposition.
  • Överlägget placeras vid de exakta pixelkoordinater som anges av x och y. Det storleksändras inte för att passa.
  • Om opaciteten är mindre än 100 tillämpas en alfamask på överlägget före blandning.
  • Överlägget kan sträcka sig utanför basbildens gränser (det kommer att beskäras).
  • EXIF-orientering tillämpas automatiskt på båda bilderna före bearbetning.
  • Utdatans dimensioner matchar basbildens dimensioner.