يشفّر تنسيق الصور بدقة Ultra HDR معلومات السطوع التي تتيح للأجهزة عرض صور أكثر سطوعًا بألوان أكثر كثافة. عندما يعدّل تطبيقك صورة Ultra HDR، عليك التأكّد من الحفاظ على معلومات السطوع. هذا مهم حتى إذا كان جهاز المستخدم لا يتيح عرض صورة Ultra HDR بكامل شدتها. فقد يشارك المستخدم صورته مع شخص لديه جهاز متوافق مع Ultra HDR، أو قد يحفظها ويشاهدها مرة أخرى على جهاز جديد بعد سنوات.
والخبر السار هو أنّ معظم طرق تعديل الصور النقطية في Android تتوافق مع تنسيق الصور بدقة Ultra HDR. إذا كنت تجري تعديلات أساسية على صورة، مثل اقتصاصها أو تدويرها، ستفي طرق Android العادية بالغرض، وستحصل على صورة بتنسيق Ultra HDR مع الأبعاد أو الاتجاه الجديدَين.
تصبح المهمة أكثر صعوبة إذا كنت تعدّل محتوى الصورة. في هذه الحالات، تحافظ طرق التعديل العادية على معلومات السطوع الخاصة بالصورة القديمة، وهو ما قد لا تريده. في هذه الحالات، قد تحتاج إلى تعديل أو إزالة خريطة الكسب (التي تشفّر معلومات سطوع الصورة) للحصول على النتيجة الصحيحة.
نظرة عامة على تنسيق Ultra HDR
يتم وصف تنسيق الصور بدقة Ultra HDR بالتفصيل في مواصفات صور Ultra HDR. الأمر الأكثر أهمية الذي يجب فهمه هو أنّ صورة Ultra HDR تحتوي على صورة أساسية وخريطة كسب.
- تحتوي الصورة الأساسية على معلومات الألوان لكل بكسل في الصورة.
- خريطة الكسب هي صورة JPEG عادية تتضمّن النسب نفسها التي تتضمّنها الصورة الأساسية، ولكن ليس بالضرورة أن تتضمّن أبعاد البكسل نفسها. تحدّد كل وحدة بكسل في خريطة الكسب مستوى الإضاءة للجزء المقابل من الصورة الأساسية.
يمكن أن تكون خريطة الكسب إما بتدرّج الرمادي أو بالألوان. إذا كانت خريطة الكسب بالألوان، تحدّد كل قناة ألوان في خريطة الكسب درجة سطوع قناة الألوان هذه في الجزء المقابل من الصورة الأساسية. إذا كانت خريطة الكسب بتدرّج الرمادي، تحدّد كل وحدة بكسل في خريطة الكسب مستوى الإضاءة لجميع قنوات الألوان الثلاث في هذا الجزء من الصورة الأساسية.
يجب أن تتطابق نسب خريطة الكسب مع نسب الصورة الأساسية، ولكن ليس من الضروري أن تتطابق أبعاد البكسل. في الواقع، عندما تنشئ منصة Android صورًا بتنسيق Ultra HDR، تنشئ خريطة كسب بعرض وارتفاع أصغر من الصورة الأساسية، ما يؤدي إلى تقليل حجم الملف بشكل كبير مع الحفاظ على ترميز معلومات كافية للحصول على نتيجة جيدة. وهذا يعني أنّ كل بكسل في خريطة الكسب قد يخزّن معلومات الإضاءة لعدة بكسلات في الصورة الأساسية.
تعديلات أساسية على صور Ultra HDR
إذا كنت تستخدم واجهات برمجة التطبيقات Bitmap
على Android لإجراء عمليات تحويل أساسية على صورة Ultra HDR، ستُجري الطرق التغييرات المناسبة على خريطة الكسب. تتوفّر عمليات Bitmap
التالية:
- التدوير: إذا دوّرت صورة Ultra HDR، سيتم تدوير خريطة كسب الإضاءة أيضًا.
- الاقتصاص: عند اقتصاص صورة Ultra HDR، يتم اقتصاص خريطة الكسب بشكل مناسب.
- تغيير الحجم: عند تغيير حجم صورة Ultra HDR، تغيّر الطريقة حجم خريطة الكسب بحيث يكون عرضها وارتفاعها نصف عرض الصورة الأساسية التي تم تغيير حجمها وارتفاعها.
وفي كلتا الحالتين، يتم الحفاظ على معلومات الإضاءة.
تعديلات متقدّمة على صور Ultra HDR
إذا أجريت تعديلات أكثر تفصيلاً على صورة Ultra HDR، سيتم الاحتفاظ بخريطة الكسب بدون تغيير، ما قد لا يمنحك النتائج التي تريدها.
تشمل التعديلات الشائعة التي قد تؤدي إلى حدوث ذلك ما يلي:
- إضافة ملصقات أو إيموجي: سيكون للملصق المضاف قيم السطوع واللون نفسها التي تظهر في المنطقة التي تم لصقه عليها.
- تراكب صورة ثانية: ستستخدم الصورة الجديدة معلومات السطوع ودرجة تشبّع الألوان الخاصة بالمحتوى الذي تتراكب عليه.
- إضافة فلاتر: قد لا تكون معلومات خريطة الكسب القديمة مناسبة للصورة الأساسية المعدَّلة.
في كلتا الحالتين، يتم الاحتفاظ بمعلومات السطوع القديمة ووضوح الألوان، ولكن قد لا تكون مناسبة للصورة المعدَّلة.
إذا كانت خريطة الكسب الأصلية مناسبة للصورة المعدَّلة، ليس عليك اتّخاذ أي إجراء. إذا كنت تريد تعديل خريطة الكسب، يكون سير العمل المعتاد على النحو التالي:
- اجلب خريطة الكسب الحالية للصورة من خلال استدعاء
Bitmap.getGainmap()
وخزِّنها مؤقتًا. - عدِّل الصورة الأساسية على النحو الذي تريد.
أجرِ تعديلات مماثلة على خريطة الكسب المخزّنة مؤقتًا. على سبيل المثال، إذا لصقت رمزًا إيموجي على الصورة الأساسية، يمكنك ضبط الجزء المقابل من خريطة الكسب على قيمة محايدة، مثل
Color.GRAY
.طبِّق خريطة الكسب المعدَّلة على الصورة من خلال استدعاء
Bitmap.setGainmap()
.
مراجع إضافية
لمزيد من المعلومات حول صور Ultra HDR، اطّلِع على المراجع الإضافية التالية: