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.
2.2 KiB
2.2 KiB
description, i18n_source_hash, i18n_provenance, i18n_output_hash
| description | i18n_source_hash | i18n_provenance | i18n_output_hash |
|---|---|---|---|
| Konum ve boyutlarla bir bölge belirterek görüntüleri kırpın. | 556f37893553 | human | 0cccc18a666b |
Görüntü Kırp
Konum ve boyut kullanarak dikdörtgen bir bölge tanımlayarak görüntüleri kırpın. Hem piksel hem de yüzde birimlerini destekler.
API Uç Noktası
POST /api/v1/tools/image/crop
Bir görüntü dosyası ve bir JSON settings alanı ile çok parçalı form verilerini kabul eder.
Parametreler
| Parametre | Tür | Zorunlu | Varsayılan | Açıklama |
|---|---|---|---|---|
| left | number | Evet | - | Kırpma bölgesinin X ofseti (sol kenardan) |
| top | number | Evet | - | Kırpma bölgesinin Y ofseti (üst kenardan) |
| width | number | Evet | - | Kırpma bölgesinin genişliği |
| height | number | Evet | - | Kırpma bölgesinin yüksekliği |
| unit | string | Hayır | "px" |
Değerler için birim: px veya percent |
Örnek İstek
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}'
Yüzde değerlerini kullanarak kırpma:
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"}'
Örnek Yanıt
{
"jobId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"downloadUrl": "/api/v1/download/a1b2c3d4-e5f6-7890-abcd-ef1234567890/photo.jpg",
"originalSize": 2450000,
"processedSize": 1200000
}
Notlar
- Kırpma bölgesi görüntü sınırları içine sığmalıdır. Bölge görüntünün ötesine uzanırsa, istek başarısız olur.
percentbirimi kullanıldığında, değerler görüntü boyutlarının yüzdelerini temsil eder (örn.left: 10, sol kenardan %10 anlamına gelir).- Çıktı biçimi giriş biçimiyle eşleşir.
- Kırpmadan önce EXIF yönlendirmesi otomatik olarak uygulanır, bu nedenle koordinatlar görsel olarak doğru yönlendirmeye karşılık gelir.