عن المشروع

Drawlib هي مكتبة رسم بلغة بايثون نقية مصممة لتحقيق "الرسم التوضيحي ككود" — حيث تكتب كود بايثون يحدد عناصر الرسم (الإحداثيات والأحجام والزوايا) والأنماط (الألوان وعرض الخطوط والخطوط)، وتنفيذ الكود يولد صورة. تفصل المكتبة المحتوى (مثل HTML) عن النمط (مثل CSS)، مما يسمح بتطبيق أنماط متسقة عبر العديد من العناصر وسهولة التحكم في إصدارات الرسوم التوضيحية إلى جانب الوثائق. تشمل الميزات الرئيسية: - عناصر الرسم: أيقونات (أكثر من 1500 نمط في 5 أنماط)، صور (مع تأثيرات)، خطوط (أنماط متعددة بما في ذلك المنحنية وبيزير)، أشكال (حوالي 20 نمطًا)، ونصوص (أحجام وخطوط وأوزان متنوعة، تدعم اللغات المحلية الرئيسية). - فئة نمط موحدة للمظهر المرئي، ووحدة وصول للسمات والأنماط (dtheme). - إعداد اللوحة: الحجم (بوحدات الإحداثيات)، وDPI للدقة، وعرض شبكة اختياري. - عناصر تحكم في المحاذاة (halign/valign) لتحديد المواقع بدقة. - ميزات متقدمة مثل مبرز الكود المطبق كفن ذكي. - أداة سطر أوامر (drawlib) لبناء العديد من الصور، مفيدة في خطوط CI/CD. المكتبة مستوحاة من ميزات Microsoft PowerPoint وتهدف إلى تنفيذ قدرات الرسم الشائعة. وهي مناسبة بشكل خاص للوثائق والكتب التقنية حيث تحتاج الصور إلى التحكم في الإصدارات وتوليدها برمجيًا. التثبيت عبر pip (`pip install drawlib`). يظهر البدء السريع استيراد جميع واجهات برمجة التطبيقات باستخدام `from drawlib.apis import *`، وتكوين اللوحة باستخدام `config(width=100, height=100)`، ورسم عناصر مثل `line()` و`circle()` و`image()` و`text()`، والحفظ باستخدام `save()`. يتم تنظيم واجهة برمجة التطبيقات في فئات/دوال أساسية، ودوال رسم، وفئات أنماط، ووحدات وصول للسمات، وفئات متقدمة. تحافظ المكتبة على الاتساق في وسيطات الدوال وفئات الأنماط، مما يجعل النتائج قابلة للتنبؤ بمجرد فهم المفاهيم الأساسية. توفر Drawlib أيضًا فئة `Dimage` لمعالجة الصور (مثل المرآة، البني الداكن) وتدعم صور Pillow. الوثائق متاحة على drawlib.com/docs/.