عن المشروع

LVGL (مكتبة الرسومات الخفيفة والمتعددة الاستخدامات) هي مكتبة واجهة مستخدم مدمجة مجانية ومفتوحة المصدر مكتوبة بلغة C (متوافقة مع C++) لإنشاء واجهات رسومية على وحدات التحكم الدقيقة والمعالجات الدقيقة من أي مورد ومنصة. لا تحتوي على تبعيات خارجية، مما يجعلها قابلة للنقل عبر أهداف من وحدات MCU الصغيرة إلى وحدات MPU متعددة النوى القائمة على Linux مع دعم 3D. يُقال إن واجهة نموذجية تحتاج إلى حوالي 100 كيلوبايت من RAM، و200–300 كيلوبايت من flash، ومخزن عرض بحجم يقارب عُشر الشاشة؛ والحد الأدنى الموثق هو حوالي 32 كيلوبايت من RAM و128 كيلوبايت من flash. القدرات الرئيسية: - أكثر من 30 واجهة مدمجة مثل Button وLabel وSlider وChart وKeyboard وMeter وArc وTable. - نظام أنماط مرن مع أكثر من 100 خاصية نمط، بالإضافة إلى محركات تخطيط تشبه Flexbox وGrid لتحجيم وتحديد مواقع متجاوبين. - ارتباطات البيانات لربط واجهة المستخدم بمنطق التطبيق. - دعم الإدخال للفأرة ولوحة اللمس ولوحة المفاتيح ولوحة المفاتيح الخارجية والأزرار الخارجية والمُشفّر؛ ودعم شاشات متعددة. - عرض 2D مدمج مع الأشكال والتدرجات ومكافحة التعرج والشفافية والتمرير السلس والظلال وتحويل الصور؛ ومحرك 3D لنماذج glTF عبر OpenGL؛ ودعم الرسومات المتجهة وSVG وLottie. - عرض نص UTF-8 يغطي أنظمة الكتابة CJK والتايلاندية والهندية والعربية والفارسية. - دعم GPU بما في ذلك VG-Lite وDave2D وNeoChrome وOpenGL. التكامل واسع: موردو الشرائح (ESP32 وNXP وRenesas وSTM32)، وأنظمة RTOS (Zephyr وNuttX وRT-Thread)، والأطر (Arduino وPlatformIO وCMSIS-Pack)، ومصنعو اللوحات قاموا بدمج LVGL. تغطي برامج التشغيل المدمجة محاكيات SDL/X11/Wayland، ووحدات تحكم العرض الشائعة مثل ILI9341 وST7789، وframebuffer Linux المدمج، وDRM/KMS، وWayland، وإدخال libinput/evdev، بالإضافة إلى مسرعات GPU. النقل اليدوي بسيط: أضف المصادر، وقم بالتهيئة عبر lv_conf.h أو Kconfig، وابدأ تهيئة LVGL، وسجّل عمليات رد نداء flush العرض وقراءة الإدخال. LVGL Pro هي سلسلة أدوات احترافية منفصلة (Editor وOnline Viewer وFigma plugin وCLI) تبني واجهات المستخدم بصريًا في XML وتصدّر كود LVGL C عاديًا دون أي وقت تشغيل إضافي. مستويات Community وEvaluation مجانية للاستخدام غير التجاري؛ ويتطلب الاستخدام التجاري ترخيصًا مدفوعًا. المكتبة الأساسية نفسها مرخصة بموجب MIT، مما يسمح باستخدامها بدون رسوم ملكية في المنتجات مفتوحة المصدر والتجارية.