Files
SnapOtter/apps/docs/th/tools/image/crop.md
T
SnapOtterandGitHub f858c4cea0 feat: clearer, disambiguated tool names across all surfaces (#520)
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.
2026-07-15 21:55:51 +08:00

3.1 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
ครอปภาพโดยการระบุบริเวณด้วยตำแหน่งและขนาด 556f37893553 human 2ebe7188a137

ครอปภาพ

ครอปภาพโดยการกำหนดบริเวณสี่เหลี่ยมโดยใช้ตำแหน่งและขนาด รองรับทั้งหน่วยพิกเซลและเปอร์เซ็นต์

API Endpoint

POST /api/v1/tools/image/crop

รับข้อมูลฟอร์ม multipart พร้อมไฟล์ภาพและฟิลด์ JSON settings

Parameters

Parameter Type Required Default Description
left number Yes - ระยะออฟเซ็ต X ของบริเวณครอป (จากขอบซ้าย)
top number Yes - ระยะออฟเซ็ต Y ของบริเวณครอป (จากขอบบน)
width number Yes - ความกว้างของบริเวณครอป
height number Yes - ความสูงของบริเวณครอป
unit string No "px" หน่วยสำหรับค่าต่าง ๆ: px หรือ percent

Example Request

curl -X POST http://localhost:1349/api/v1/tools/image/crop \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"left": 100, "top": 50, "width": 800, "height": 600}'

ครอปโดยใช้ค่าเปอร์เซ็นต์:

curl -X POST http://localhost:1349/api/v1/tools/image/crop \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"left": 10, "top": 10, "width": 80, "height": 80, "unit": "percent"}'

Example Response

{
  "jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
  "originalSize": 2450000,
  "processedSize": 1200000
}

Notes

  • บริเวณครอปต้องอยู่ภายในขอบเขตของภาพ หากบริเวณขยายเกินภาพ คำขอจะล้มเหลว
  • เมื่อใช้หน่วย percent ค่าจะแทนเปอร์เซ็นต์ของขนาดภาพ (เช่น left: 10 หมายถึง 10% จากขอบซ้าย)
  • รูปแบบเอาต์พุตตรงกับรูปแบบอินพุต
  • การจัดวางแนว EXIF จะถูกนำมาใช้อัตโนมัติก่อนการครอป ดังนั้นพิกัดจึงสอดคล้องกับการจัดวางแนวที่ถูกต้องเชิงสายตา