Files
SnapOtter/apps/docs/ar/tools/image/compress.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

2.7 KiB

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
تقليل حجم ملف الصورة حسب مستوى الجودة أو إلى حجم ملف مستهدف. 342c5cf1f864 human afd5e716e0ea

ضغط الصورة

قلّل حجم ملف الصورة بتحديد مستوى جودة أو حجم ملف مستهدف بالكيلوبايت. تستخدم الأداة بحثًا ثنائيًا تكراريًا للوصول إلى أحجام الأهداف بدقة.

API Endpoint

POST /api/v1/tools/image/compress

يقبل بيانات نموذج multipart تحتوي على ملف صورة وحقل JSON باسم settings.

Parameters

Parameter Type Required Default Description
mode string No "quality" وضع الضغط: quality أو targetSize
quality number No 80 مستوى الجودة (1-100). يُستخدَم عندما يكون الوضع quality.
targetSizeKb number No - حجم الملف المستهدف بالكيلوبايت. يُستخدَم عندما يكون الوضع targetSize.

Example Request

الضغط إلى جودة 60:

curl -X POST http://localhost:1349/api/v1/tools/image/compress \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"mode": "quality", "quality": 60}'

الضغط إلى حجم مستهدف قدره 200 كيلوبايت:

curl -X POST http://localhost:1349/api/v1/tools/image/compress \
  -H "Authorization: Bearer si_your-api-key" \
  -F "file=@photo.jpg" \
  -F 'settings={"mode": "targetSize", "targetSizeKb": 200}'

Example Response

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

Notes

  • في وضع quality، تنتج القيم الأقل ملفات أصغر بمزيد من عيوب الضغط. القيمة 80 افتراضية جيدة للاستخدام على الويب.
  • في وضع targetSize، ينفّذ المحرّك ضغطًا تكراريًا للاقتراب من الهدف قدر الإمكان دون تجاوزه.
  • صيغة الإخراج تطابق صيغة الإدخال. يُطبَّق الضغط على الترميز الأصلي للصيغة (مثل جودة JPEG لملفات JPEG، وجودة WebP لملفات WebP).
  • إذا كانت الجودة الافتراضية (80) مقبولة، يمكنك حذف المُعامِل quality بالكامل.