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

description, i18n_source_hash, i18n_provenance, i18n_output_hash
description i18n_source_hash i18n_provenance i18n_output_hash
تقسيم صورة واحدة إلى بلاطات شبكية حسب عدد الصفوف والأعمدة أو حسب الحجم بالبكسل، وإرجاعها كأرشيف ZIP. 57a2e11e7cce human 75b8145cb271

تقسيم الصورة

قسّم صورة واحدة إلى بلاطات شبكية حسب عدد الأعمدة/الصفوف أو حسب أبعاد بكسل محددة. تُرجع أرشيف ZIP يحتوي على جميع البلاطات.

نقطة نهاية API

POST /api/v1/tools/image/split

المعاملات

المعامل النوع مطلوب الافتراضي الوصف
columns integer لا 3 عدد الأعمدة المراد التقسيم إليها (1 إلى 100)
rows integer لا 3 عدد الصفوف المراد التقسيم إليها (1 إلى 100)
tileWidth integer لا - عرض البلاطة بالبكسل (10 كحد أدنى). يتجاوز columns عند ضبط كل من tileWidth وtileHeight.
tileHeight integer لا - ارتفاع البلاطة بالبكسل (10 كحد أدنى). يتجاوز rows عند ضبط كل من tileWidth وtileHeight.
outputFormat string لا "original" صيغة مخرجات البلاطات: original، png، jpg، webp، avif، jxl
quality number لا 90 جودة المخرجات للصيغ ذات الفقد (1 إلى 100)

مثال طلب

curl -X POST http://localhost:1349/api/v1/tools/image/split \
  -F "file=@large-image.png" \
  -F 'settings={"columns":3,"rows":3,"outputFormat":"png"}' \
  --output split-tiles.zip

مثال استجابة

تُبثّ الاستجابة مباشرة كملف ZIP مع Content-Type: application/zip. يتبع اسم الملف النمط split-<jobId>.zip.

كل بلاطة داخل الـ ZIP تُسمى <originalBaseName>_r<row>_c<col>.<ext> (مثل photo_r1_c1.png، photo_r2_c3.webp).

ملاحظات

  • تقبل ملف صورة واحدًا.
  • تدعم صيغ المدخلات HEIC وRAW وPSD وSVG (تُفكّ ترميزاتها تلقائيًا).
  • عند توفير كل من tileWidth وtileHeight، فإنهما يأخذان الأولوية على columns/rows. تُحسب أبعاد الشبكة كـ ceil(imageWidth / tileWidth) وceil(imageHeight / tileHeight).
  • قد تكون بلاطات الحواف (العمود الأيمن، الصف السفلي) أصغر من حجم البلاطة المحدد إذا لم تكن أبعاد الصورة قابلة للقسمة بالتساوي.
  • الحد الأقصى لحجم الشبكة مقيّد بـ 100x100 (10,000 بلاطة).
  • تبثّ الاستجابة ملف الـ ZIP مباشرة، لذا لا يوجد جسم استجابة بصيغة JSON. استخدم --output مع curl لحفظ الملف.