mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
Renames 18 ambiguous or hard-to-search tool names so image tools self-qualify like the other modalities ("Compress" becomes "Compress Image"), and cleans up a few awkward names. Propagated across search (constants.ts), display (en.ts + 20 locales), the OpenAPI base spec + 20 locale specs, and the docs tool-page headings in 21 languages. Removes the duplicate "Normalize Audio" summary shared by the video and audio endpoints. Tool ids and routes are unchanged, so no API paths or bookmarks break.
4.5 KiB
4.5 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| ต่อภาพเข้าด้วยกันแบบเรียงข้าง เรียงซ้อน หรือแบบตาราง พร้อมควบคุมการจัดตำแหน่ง ช่องว่าง เส้นขอบ และโหมดการปรับขนาด | 670c5cc944b1 | human | c557fce78939 |
ต่อและรวมภาพ
ต่อภาพหลายภาพเข้าด้วยกันแบบเรียงข้าง เรียงซ้อนแนวตั้ง หรือจัดวางแบบตาราง รองรับการจัดตำแหน่ง ช่องว่าง เส้นขอบ รัศมีมุม และโหมดการปรับขนาดหลายรูปแบบ
API Endpoint
POST /api/v1/tools/image/stitch
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| direction | string | No | "horizontal" |
ทิศทางการจัดวาง: horizontal, vertical, grid |
| gridColumns | integer | No | 2 | จำนวนคอลัมน์เมื่อ direction เป็น grid (2 ถึง 100) |
| resizeMode | string | No | "fit" |
วิธีปรับขนาดภาพ: fit, original, stretch, crop |
| alignment | string | No | "center" |
การจัดตำแหน่งตามแกนขวาง: start, center, end |
| gap | number | No | 0 | ช่องว่างระหว่างภาพเป็นพิกเซล (0 ถึง 1000) |
| border | number | No | 0 | ความกว้างของเส้นขอบด้านนอกเป็นพิกเซล (0 ถึง 500) |
| cornerRadius | number | No | 0 | รัศมีมุมที่ใช้กับผลลัพธ์สุดท้าย (0 ถึง 500) |
| backgroundColor | string | No | "#FFFFFF" |
สีพื้นหลัง/เส้นขอบแบบ hex (เช่น #FF0000) |
| format | string | No | "png" |
รูปแบบผลลัพธ์: png, jpeg, webp, avif, jxl |
| quality | number | No | 90 | คุณภาพผลลัพธ์ (1 ถึง 100) |
Example Request
curl -X POST http://localhost:1349/api/v1/tools/image/stitch \
-F "file=@image1.png" \
-F "file=@image2.png" \
-F "file=@image3.png" \
-F 'settings={"direction":"horizontal","resizeMode":"fit","gap":10,"backgroundColor":"#FFFFFF","format":"png"}'
Example Response
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/stitch.png",
"originalSize": 1234567,
"processedSize": 987654
}
Notes
- ต้องมีภาพอย่างน้อย 2 ภาพ อัปโหลดไฟล์ภาพหลายไฟล์ในคำขอ multipart
- รองรับรูปแบบไฟล์นำเข้า HEIC, RAW, PSD และ SVG (ถอดรหัสอัตโนมัติ)
- โหมดการปรับขนาด:
fit- ปรับขนาดภาพให้ตรงกับมิติที่เล็กที่สุดตามแกนที่ต่อกันoriginal- คงขนาดเดิมไว้ (อาจทำให้ขอบไม่เท่ากัน)stretch- บังคับให้ภาพตรงกับมิติที่เล็กที่สุดโดยไม่รักษาสัดส่วนภาพcrop- ครอปแบบครอบคลุมให้ภาพตรงกับมิติที่เล็กที่สุด
- ในโหมด
gridเซลล์จะถูกกำหนดขนาดตามมิติค่ามัธยฐานของภาพทั้งหมด cornerRadiusจะถูกนำไปใช้กับผลลัพธ์สุดท้ายทั้งหมด ไม่ใช่กับแต่ละภาพ- ขนาดแคนวาสถูกจำกัดโดยการกำหนดค่าเซิร์ฟเวอร์
MAX_CANVAS_PIXELSเพื่อป้องกันการใช้หน่วยความจำจนหมด