ForHosting KIT · قراءة المواقع ومراقبتها

حساب إطار الإحاطة لمسار SVG

تقرأ هذه الحاسبة أوامر إحداثيات مسار SVG، وتعيد القيم الدنيا والعليا للمحورين x وy، إضافة إلى العرض والارتفاع.

● Betaمجاني · داخل متصفحك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

وهي تدعم القطع المستقيمة ومنحنيات بيزييه والأقواس الإهليلجية والأوامر النسبية ونقاط التحكم الملساء والمسارات الفرعية المغلقة. ولأن المنحنى قد يتجاوز نقطتي نهايته، ولأن نقاط التحكم لا تقع عليه بالضرورة، يحسب النظام القيم الهندسية القصوى بدلاً من جمع الأرقام الواردة في المصدر فحسب.

احسبوا الحدود من بيانات المسار وحدها

ألصقوا قيمة السمة <code>d</code> لعنصر مسار SVG في حقل المسار. تقبل الحاسبة الأوامر القياسية للحركة والخط الأفقي والرأسي ومنحنيات بيزييه التكعيبية والتربيعية وصيغها الملساء والقوس الإهليلجي وإغلاق المسار، بصيغ مطلقة أو نسبية. تعيد <code>min_x</code> و<code>min_y</code> و<code>max_x</code> و<code>max_y</code> ثم العرض والارتفاع ضمن نظام إحداثيات المسار نفسه. لا تطبق تحويلات العنصر أو المجموعات الأصلية، ولا توسع النتيجة بسبب سماكة الحد أو نهاياته أو وصلاته أو العلامات أو المرشحات أو القص. لذلك فهي تقيس هندسة خط الوسط المرمزة بدقة. تُرفض بيانات المسار الفارغة، أما المسار الذي يحوي نقطة حركة واحدة فينتج بصورة صحيحة عرضاً وارتفاعاً يساويان صفراً.

لماذا تحتاج المنحنيات إلى قيم قصوى تحليلية

لا يمكن إيجاد إطار موثوق بالنظر إلى نهايات القطع فقط. فقد يبلغ منحنى بيزييه أصغر أو أكبر إحداثي بين البداية والنهاية، وقد تقع نقطة التحكم خارجه من دون أن يمر بها. تحل الحاسبة مشتقة كل إحداثي وتقيّم كل جذر داخل القطعة. وبالنسبة إلى الأقواس، تحوّل صيغة SVG إلى تمثيل المركز، وتراعي ضبط أنصاف الأقطار والدوران، وتستخرج زوايا القيم القصوى، ثم تضم المرشحين الواقعين ضمن اتجاه القوس المختار فقط. تعكس الأوامر الملساء نقطة التحكم السابقة، وتنطلق الإحداثيات النسبية من النقطة الحالية، ويضيف إغلاق المسار خط الرجوع. وتوفر هذه الطريقة حدوداً هندسية من دون أخذ عينات قد يفوّت قمة ضيقة بين مواضع عشوائية.

استخدموا النتيجة في تخطيطات وأدوات SVG

يفيد المستطيل الناتج في إنشاء viewBox، وتوسيط الرسومات، وتوحيد الأيقونات، ومقارنة امتداد المسارات، ووضع التعليقات، والتحقق من الهندسة المولدة. لإنشاء viewBox مطابق، استخدموا <code>min_x min_y width height</code> بهذا الترتيب. إذا كان للمسار حد مرئي، فأضيفوا بعد ذلك الهامش اللازم للسماكة والوصلات، وعالجوا التحويلات بإجراء المصفوفات المناسب. يقبل المحلل الفواصل أو المسافات والإشارات المتجاورة والكسور العشرية والصيغة العلمية. ويرفض الأوامر المجهولة ومجموعات الإحداثيات الناقصة والنص غير الصحيح ورايات القوس غير الصالحة وأنصاف الأقطار السالبة. النتيجة حتمية ولا تحتاج إلى شبكة أو عارض خارجي، ويستخدم المتصفح وAPI الحساب النقي نفسه.

إنشاء viewBox محكم

حوّلوا الإحداثيات الدنيا والعرض والارتفاع إلى viewBox يحيط بهندسة المسار بإحكام.

توحيد مجموعة من الأيقونات

قيسوا المسارات باتساق قبل نقل الأيقونات أو تغيير حجمها ضمن نظام إحداثيات مشترك.

التحقق من هندسة SVG المولدة

تأكدوا من بقاء المنحنيات والأقواس المنشأة برمجياً داخل مساحة الرسم المقصودة.

هل يشمل الإطار المنحنيات والأقواس بدقة؟

نعم. تُقيّم القيم القصوى التحليلية لمنحنيات بيزييه والأقواس الإهليلجية المدورة من دون أخذ عينات.

هل يشمل سماكة الحد؟

لا. تغطي النتيجة هندسة المسار فقط، من دون الحد أو نهاياته أو وصلاته أو العلامات أو المرشحات أو المؤثرات.

هل تُطبق تحويلات SVG؟

لا. تُقاس الإحداثيات في نظام المسار نفسه، ولا تدخل تحويلات العنصر أو أسلافه ضمن المدخلات.

ماذا يحدث عندما يكون المسار فارغاً؟

يفشل الطلب بوصفه إدخالاً غير صالح، لأن بيانات المسار الفارغة لا تملك إطار إحاطة.

ما تكلفة طلب API؟

يكلف كل طلب API مبلغ $0.002. وتعمل نسخة المتصفح محلياً من دون تكلفة.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/web/svg-path-bounding-box

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/web/svg-path-bounding-box \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"path":"M10 20 C30 0 50 40 70 20 L90 60"}'
{
  "path": "M10 20 C30 0 50 40 70 20 L90 60"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.svg_path_bounding_box",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

timeout_sec30
max_crawl_pages25
HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

اطّلع على توثيق KIT الكامل ←