تقنية

وحدة pHYs في PNG: متى نعرف النسبة دون المقاس؟

بطاقات A إلى D: شبكة12 في8 وثلاثيات غائبة أو3،2،0 أو3000،2000،0 أو3000،2000،1.
الألوان والشبكة نفسها في البطاقات؛ الثلاثيات هي متغير الاختبار.

تحدد pHYs عدد البكسلات لكل وحدة على المحورين؛ الوحدة0 تعني نسبة فقط، والوحدة1 تعني المتر. [1]

الخلاصة السريعة

  • تحمل ملفاتنا الأربعة الصورة الرقمية نفسها:12 عمودا و8 صفوف.
  • تعطي B وC نسبة عرض إلى ارتفاع مقدارها1، مع بقاء المقاس المطلق غير محدد.
  • تعطي D بالحساب4 مليمترات في4؛ لم نطبعها أو نقس عرضها على شاشة.
  • اختلاف الثلاثية المسجلة لم يغير بايتات الألوان المفكوكة في ملفات الاختبار.

ابدأ بسجل الملفات الأربعة

أنشأنا صورة صغيرة تتدرج ألوانها عبر اثني عشر عمودا وثمانية صفوف. صنعنا منها أربعة ملفات سميناها A وB وC وD. أبقينا بيانات الصورة نفسها، وغيّرنا ثلاثية واحدة بين النسخ التي تحملها. الأرقام التالية من ملفات محلية أعددناها لهذا الشرح، وليست قياسات لصورة كاميرا.

ترتيب الثلاثية هو X ثم Y ثم الوحدة: في B وضعنا3 و2 و0؛ وفي C وضعنا3000 و2000 و0؛ وفي D وضعنا3000 و2000 و1. تركنا A بلا ثلاثية، وأبقينا أبعاد الملفات الأربعة في الجدول. [1]

عند غياب pHYs تُفترض البكسلات مربعة، دون مقاس مادي معلوم. [1]

الملفالأبعاد الرقميةXYالوحدةالنسبة المحسوبةالمقاس المطلق
A12 × 8——غائبة3:2غير محدد
B12 × 83201:1غير محدد
C12 × 83000200001:1غير محدد
D12 × 83000200011:14 mm × 4 mm

احسب نسبة B ثم افحص C

نقسم في B اثني عشر على ثلاثة، فنحصل على4؛ ونقسم ثمانية على اثنين، فنحصل على4 أيضا. إذن نسبة العرض المحسوب إلى الارتفاع المحسوب4 إلى4، أي1. لا نضع كلمة متر إلى جانب الأربعة في هذه النسخة: سجلها يحمل الوحدة0.

في C تصبح القسمة12 على3000 مساوية0.004، والقسمة8 على2000 مساوية0.004 أيضا. النسبة ما زالت1. تضاعفت قيمتا السجل ألف مرة من B إلى C، بينما بقيت نسبة أحد الناتجين إلى الآخر كما هي. ليس في حسابنا تحويل من صورة صغيرة إلى صورة أكبر؛ عدد الأعمدة والصفوف لم يتبدل.

قارن خلايا الرسم: رسمناها في حالة A مربعة، فيكون شكل الشبكة أعرض من ارتفاعه. وفي B وC رسمنا عرض الخلية ثلثي ارتفاعها؛ اثنا عشر عرضا من هذا النوع يساوون ثمانية ارتفاعات. الرسم بناء حسابي للمعطيات، وليس لقطة من برنامج عارض.

غيّر الوحدة وحدها بين C وD

الأعداد3000 و2000 متساوية في هذين السطرين؛ الفرق المكتوب هو0 مقابل1 في خانة الوحدة. في D نكتب ناتج العرض0.004 متر وناتج الارتفاع0.004 متر. ضرب كل منهما في ألف يعطينا4 مليمترات. راجع النتيجة بالعكس:0.004 في3000 تعيد الأعمدة الاثني عشر، و0.004 في2000 تعيد الصفوف الثمانية.

وضعنا في الشكل الداخلي مسطرة موسومة بالمليمتر تحت D فقط. أما B وC فيحملان علامة استفهام مكان المقاس المطلق. لو نسخنا عبارة4 مليمترات إلى C بسبب تشابه أول رقمين، نكون قد تجاهلنا الحقل الوحيد الذي غيّرناه بين النسختين.

اختبر خطأ حسابيا آخر باستبدال قسمة الارتفاع8 على2000 بالقسمة على3000. ستحصل على نحو0.002667 بدلا من0.004. هذا لا يطابق جدول D، لأنك استعملت قيمة محور العرض مرتين. احتفظ باسم كل محور فوق قاسمِه عند نقل الحساب إلى ورقة.

حساب الشبكات: A بنسبة3 إلى2، وB وC وD بنسبة1؛ المقاس تحت B وC مجهول، وتحت D أربعة مليمترات.
تفسير حسابي لملفاتنا؛ مسطرة D وحدها موسومة بالمليمتر.

راجع ما بقي مطابقا في الملفات

أعدنا فتح النسخ الأربع بمكتبة Pillow وقارنا الأبعاد وبايتات RGB بعد الفك. جاءت كلها12 في8، وتطابقت بايتات الألوان. وفحصنا ببرنامج مستقل القيم الثلاث المكتوبة في كل نسخة، فطابقت جدولنا. كذلك تطابقت بيانات IDAT بين الملفات الأربعة؛ لذلك لا ننسب اختلاف شكل الشبكة المرسومة إلى ألوان أضفناها.

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

افصل الحساب عن العرض الفعلي

يجوز للعارض تجاهل النسبة، لذلك لا تضمن البيانات وحدها شكلا فعليا على الشاشة. [1]

اكتب النتيجة النهائية على مستويين: في جدولنا B وC مربعتا النسبة المحسوبة دون طول مطلق محدد؛ وD طولها المحسوب4 مليمترات في كل اتجاه. أما الشكل الذي يعرضه برنامج معين فيحتاج فحص ذلك البرنامج. لا نضيف إلى سجلنا نتيجة معاينة لم ننفذها.

إذا وصلك سطر مختصر يقول3000 في2000 فقط، فاطلب خانة الوحدة وأبعاد الصورة الرقمية قبل تطبيق حسابنا. يبين الفرق بين C وD لماذا تركنا الحقول الخمسة ظاهرة في الجدول: حقل صغير واحد هو الذي فصل النسبة وحدها عن المقاس الذي أمكننا كتابة وحدته.

المراجع

  1. W3C: PNG3 pHYs
    https://www.w3.org/TR/png-3/
أُعد بمساعدة الذكاء الاصطناعي؛ مراجعة آلية دون اعتماد بشري أو مهني. تاريخ الإعداد13 أكتوبر2026.

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي وراجعته أدوات ذكاء اصطناعي. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.