For the complete documentation index, see llms.txt. This page is also available as Markdown.

Image Write

تقوم هذه الدالة (function block) بحفظ الصور الواردة إلى القرص عندما يكون شرط الحفظ مفعلًا. تدعم ضغطًا اختياريًا (JPEG) وتسمية تلقائية للملفات، ومصممة لتسهيل تصدير الصور الملتقطة أو المعالجة.

📥 المدخلات

Folder Path المسار الكامل للمجلد الذي سيتم حفظ الصورة فيه. إذا تُرك فارغًا، يُستخدم مجلد العمل الحالي.

File Name اسم ملف اختياري بدون الامتداد. إذا تُرك فارغًا، يتم استخدام اسم تلقائي مبني على الطابع الزمني (timestamp).

Save مشغل منطقي (Boolean) يتحكم بما إذا كانت الصورة ستُكتب على القرص أم لا. أعطِ TRUE للحفظ، FALSE لإيقاف الحفظ.

Input Image الصورة المراد حفظها. يقبل أي صيغة صورة شائعة قادمة من الكتل السابقة.

📤 المخرجات

لا يولد هذا البلوك مقابس إخراجية. يعرض الحالة عبر رسائل السجل (log messages) المرئية في واجهة المستخدم.

🕹️ عناصر التحكم

Compress Image مربع اختيار للتحويل بين حفظ الصورة كملف JPEG مضغوط أو كـ PNG بدون فقدان. استخدم الضغط لتقليل حجم الملف عند الحاجة لتوفير مساحة أو عرض نطاق.

🎨 الميزات

  • الحفظ عند الطلب عبر مدخل Save المنطقي.

  • استخدام اسم ملف تلقائي يعتمد على الطابع الزمني في حال عدم تزويد اسم.

  • خيار الحفظ كـ JPEG مضغوط أو PNG بدون فقدان.

  • رسائل سجل معلوماتية تؤكد النجاح أو تُبلغ عن أخطاء (مجلد مفقود، صلاحيات، أو عدم وجود صورة).

  • واجهة بسيطة للتحكم في تفعيل/تعطيل الضغط.

⚙️ آلية التشغيل

عندما يكون مدخل Save مفعلًا (TRUE)، يحاول البلوك كتابة صورة Input Image الحالية إلى المسار المحدد بواسطة Folder Path و File Name. إذا كان Compress Image مفعلًا، تُحفظ الصورة بصيغة JPEG لتقليل الحجم؛ وإلا تُحفظ كـ PNG. إذا لم يكن المجلد موجودًا أو كانت الصورة مفقودة، يسجل البلوك خطأ بدلاً من الحفظ.

📝 إرشادات الاستخدام

  1. حدد مجلد الوجهة باستخدام مدخل Folder Path أو اتركه فارغًا لاستخدام المجلد الافتراضي.

  2. اختياريًا ضع File Name أو اتركه فارغًا لاستخدام اسم تلقائي بطابع زمني.

  3. زوّد الصورة المراد حفظها بمقبس Input Image.

  4. فعّل مدخل Save (مثلاً عبر مشغل يدوي أو منطق برمجي) لكتابة الملف.

  5. استخدم مربع Compress Image للاختيار بين JPEG (أصغر) أو PNG (بدون فقدان).

💡 نصائح وحيل

  • استخدم Choose Folder لتمكين المستخدمين من اختيار المجلد المستهدف تفاعليًا قبل الحفظ.

  • اجمع مع String Input أو Date-Time لبناء أسماء ملفات وصفية ومُوسومة بالزمن.

  • معاينة الصورة باستخدام Show Image قبل الحفظ للتحقق من المحتوى.

  • إذا كانت الصور كبيرة، أضف Image Resizer قبل هذا البلوك لتقليل دقة الصورة وتحسين سرعة الحفظ والتمرير.

  • استخدم Image ROI Select أو Draw Result On Image لاقتطاع أو تعليق الصور قبل الحفظ (مثال: حفظ مناطق مكتشفة أو نتائج مُعلّمة).

  • عند الحاجة لتسجيل معدل عالٍ من الصور، فكّر باستخدام Image Logger أو Record Video بدل حفظ إطارات فردية عند كل تريجر.

🛠️ استكشاف الأخطاء وإصلاحها

  • عدم وجود المجلد أو خطأ صلاحيات الكتابة: تحقق من المسار المقدم في Folder Path واستخدم Choose Folder لتجنب الأخطاء الإملائية.

  • خطأ "No image data available": تأكد أن مقبس Input Image يستقبل بيانات صورة صالحة قبل تفعيل تريجر Save. عاين باستخدام Show Image.

  • ملفات كبيرة أو بطء في الحفظ: فعّل Compress Image أو أضف Image Resizer لتقليل الدقة قبل الحفظ.

  • أسماء ملفات غير متوقعة: أضف Date-Time أو String Input لتوليد أسماء فريدة ووصفية وتجنّب الكتابة فوق ملفات سابقة.

إذا كنت تحفظ بشكل متكرر في فترات قصيرة، تأكد من أن مساحة التخزين وجهة الكتابة لديها أداء كتابة كافٍ ومساحة حرة كافية لسيناريو عملك.

آخر تحديث