> For the complete documentation index, see [llms.txt](https://docs.augelab.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.augelab.com/arabic/alblwkat-alwzyfyh/blocks-reference/image-transformations/operations/image-translate.md).

# Image Translate

تقوم هذه الدالة بتحريك صورة أفقيًا و/أو عموديًا بعدد بكسلات محدد. المنطقة الفارغة الناتجة تُملأ بلون خلفية تختاره. المدخلات `X`, `Y` و`Background Color` اختيارية — القيم الفارغة تترك الصورة دون تغيير أو تستخدم القيم الافتراضية.

## 📥 المدخلات

* `Input Image`\
  صورة رمادية أو ملونة ليتم تحريكها (مقبس image).
* `X displacement`\
  إزاحة أفقية بالبكسل (مقبس number). القيم الموجبة تحرك الصورة إلى اليمين، والسالبة إلى اليسار. اختيارية — إن كانت فارغة تُعامل كـ 0.
* `Y displacement`\
  إزاحة عمودية بالبكسل (مقبس number). القيم الموجبة تحرك الصورة إلى الأسفل، والسالبة إلى الأعلى. اختيارية — إن كانت فارغة تُعامل كـ 0.
* `Background Color`\
  لون التعبئة للمناطق المكشوفة (مقبس pixel). اختيارية — افتراضيًا أسود إذا لم تُقدّم.

## 📤 المخرجات

* `Translated Image`\
  الصورة الناتجة بعد التحريك (مقبس image). أبعاد الصورة الناتجة تطابق أبعاد الإدخال؛ المحتوى يُزحزح والحواف تُملأ باللون المختار.

## 🕹️ الضوابط

* `X displacement`\
  أدخل مقدار الإزاحة الأفقية بالبكسل. استخدم قيم سالبة لتحريك إلى اليسار.
* `Y displacement`\
  أدخل مقدار الإزاحة العمودية بالبكسل. استخدم قيم سالبة لتحريك إلى الأعلى.
* `Background Color`\
  اختر لون الخلفية لملء المناطق الفارغة (استخدم مدخل من نوع `Pixel` أو بلوك يُنتج لونًا).

## ✨ الميزات

* المدخلات اختيارية: اترك `X displacement` أو `Y displacement` فارغة للحفاظ على ذلك المحور دون تغيير.
* تحافظ على حجم صورة الإدخال؛ المحتوى المحوَّل يُقص ليتناسب مع اللوحة الأصلية.
* تعمل مع الصور الرمادية وRGB على حد سواء.
* تعبئة الخلفية تقبل قيمة قناة واحدة أو قيم RGB اعتمادًا على نوع صورة الإدخال.

## 📝 تعليمات الاستخدام

1. اربط بلوك يُنتج صورة إلى `Input Image`.
2. قدم قيم بكسل إلى `X displacement` و/أو `Y displacement` لتحريك الصورة.
3. اختياريًا قدم `Background Color` للتحكم في لون المناطق المكشوفة.
4. استخدم خرج `Translated Image` كمدخل للبلوكات التالية (عرض، تحليل، حفظ).

أمثلة:

* لنقل صورة 50 بكسل لليمين و20 بكسل للأسفل ضع `X displacement` = 50 و`Y displacement` = 20.
* للتحريك عموديًا فقط ضع قيمة في `Y displacement` واترك `X displacement` فارغًا.

## 📊 سلوك التشغيل

عند تشغيل البلوك، يقرأ صورة الإدخال وقيم الإزاحة، يحرك البكسلات بالمقدار المطلوب، يملأ المناطق المكشوفة باللون المختار، ويعيد الصورة المحوَّلة على مقبس `Translated Image`. القيم الفارغة للإزاحة تُعامل كصفر.

## 💡 نصائح وحيل

* لتجنب قطع أجزاء مهمة من الصورة بعد التحريك، أضف هامشًا حول الصورة أولًا باستخدام `Image Padding` أو زيّن اللوحة بزر `Image Resize` و`Make Image` لإنشاء خلفية أكبر، ثم حرّك داخل اللوحة الأكبر.
* استخدم `Pixel` أو بلوك صغير `Make Image` لإنشاء لون خلفية دقيق وأدخله في `Background Color`.
* ادمج مع `Image ROI` أو `Image ROI Select` لتحريك منطقة مقصوصة فقط، ثم استخدم `Image Concatenate` أو `Collage Images` لإعادة تجميع/عرض النتائج.
* إذا احتجت قلبًا أو تدويرًا بعد التحريك، قم بسلسلة `Flip Image` أو `Rotate Image Angle` بعد هذا البلوك.
* لتخطيطات مبطّنة أو تركيب، حرك شرائح متعددة ثم ادمجها مجددًا باستخدام `Image Concatenate` أو `Merge Channels` حسب الحاجة.

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

* مشكلة: أجزاء مهمة من الصورة تقطع بعد التحريك.\
  حل: أضف هامشًا قبل التحريك باستخدام `Image Padding` أو زِد حجم اللوحة باستخدام `Image Resize` / `Make Image` ثم حرّك.
* مشكلة: لون الخلفية لا يتطابق مع المتوقع.\
  حل: تأكد أن مدخل `Background Color` يقدم صيغة القنوات الصحيحة (قيمة واحدة للرمادي، ثلاثي RGB للملون). استخدم `Pixel` لتزويد اللون الدقيق.
* مشكلة: لا يحدث تغيير بعد تقديم قيم الإزاحة.\
  حل: تحقق أن مدخلات الإزاحة متصلة وليست فارغة؛ القيم الفارغة تُعامل كصفر.
* مشكلة: الحاجة للحفاظ على جودة الصورة عند تحريك عدد كبير من البكسلات.\
  حل: فكّر في التحريك على لوحة أكبر أولًا وتجنب القص المتكرر؛ استخدم بلوكات مثل `Show Image` للتحقق من النتائج.
