Files
SnapOtter/apps/docs/it/tools/image/ai-canvas-expand.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
Espande la tela di un'immagine con outpainting basato su IA, estendendola in qualsiasi direzione e riempiendo le nuove aree in modo coerente con l'originale. 1b00db4ed40d human c90a990016d1

Espansione tela con IA

Espande la tela di un'immagine con riempimento basato su IA (outpainting). Estende l'immagine in qualsiasi direzione e riempie le nuove aree con contenuto generato dall'IA in modo coerente con l'immagine esistente.

Endpoint API

POST /api/v1/tools/image/ai-canvas-expand

Elaborazione: asincrona (restituisce 202, interroga /api/v1/jobs/{jobId}/progress per lo stato tramite SSE)

Bundle del modello: object-eraser-colorize (1-2 GB)

Parametri

Parametro Tipo Obbligatorio Predefinito Descrizione
file file - File immagine (multipart)
extendTop integer No 0 Pixel di estensione in alto
extendRight integer No 0 Pixel di estensione a destra
extendBottom integer No 0 Pixel di estensione in basso
extendLeft integer No 0 Pixel di estensione a sinistra
tier string No "balanced" Livello di qualità: fast, balanced, high
format string No "auto" Formato di output: auto, png, jpg, jpeg, webp, tiff, gif, avif, heic, heif, jxl
quality integer No 95 Qualità di output (1-100)

Almeno una direzione di estensione deve essere maggiore di 0.

Esempio di richiesta

curl -X POST http://localhost:1349/api/v1/tools/image/ai-canvas-expand \
  -F "file=@photo.jpg" \
  -F 'settings={"extendTop":200,"extendBottom":200,"extendLeft":100,"extendRight":100,"tier":"balanced"}'

Risposta

Risposta iniziale (202 Accepted)

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "async": true
}

Avanzamento (SSE su /api/v1/jobs/{jobId}/progress)

event: progress
data: {"phase":"processing","stage":"Expanding canvas...","percent":50}

Risultato finale (tramite SSE)

{
  "phase": "complete",
  "percent": 100,
  "result": {
    "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "downloadUrl": "/api/v1/download/{jobId}/photo_extended.png",
    "previewUrl": "/api/v1/download/{jobId}/preview.webp",
    "originalSize": 300000,
    "processedSize": 520000
  }
}

Note

  • Richiede l'installazione del bundle del modello object-eraser-colorize (1-2 GB).
  • Usa l'outpainting basato su LaMa per generare contenuto per le regioni espanse.
  • Il parametro tier bilancia velocità e qualità: fast produce risultati rapidamente con possibili artefatti, high impiega più tempo ma produce riempimenti più uniformi e coerenti.
  • I valori di estensione sono in pixel. Le dimensioni finali dell'immagine saranno: larghezza originale + extendLeft + extendRight per altezza originale + extendTop + extendBottom.
  • Per i formati di output non visualizzabili in anteprima nel browser (HEIC, JXL, TIFF), viene generata un'anteprima WebP insieme all'output principale.
  • Supporta i formati di input HEIC/HEIF, RAW, TGA, PSD, EXR e HDR tramite decodifica automatica.