تم حلها: جافا سكريبت ست عشري إلى RGB

تكمن المشكلة الرئيسية في تحويل قيم الألوان السداسية العشرية إلى RGB في عدم وجود تطابق واحد إلى واحد بين التنسيقين. على سبيل المثال ، يتم تمثيل اللون # FF0000 في RGB كـ 255 ، 0 ، 0 ، ولكن في النظام السداسي ، سيكون مساويًا للون # F0. هذا يعني أن لونين مختلفين يمكن أن يكون لهما نفس قيمة RGB إذا كانا مكونين من كميات مختلفة من كل مكون من مكونات اللون.

"use strict";

function hexToRgb(hex) {
    var result = /^#?([a-fd]{2})([a-fd]{2})([a-fd]{2})$/i.exec(hex);
    return result ? {
        r: parseInt(result[1], 16),
        g: parseInt(result[2], 16),
        b: parseInt(result[3], 16)
    } : null;
}

"استخدام صارم" ؛

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

وظيفة hexToRgb (ست عشري) {
var result = / ^#؟([a-fd]{2})([a-fd]{2})([a-fd]{2})$/i.exec(hex)؛
نتيجة العودة؟ {
r: parseInt (نتيجة [1] ، 16) ،
g: parseInt (نتيجة [2] ، 16) ،
ب: parseInt (نتيجة [3] ، 16)
} : باطل؛
}

هذه وظيفة تقوم بتحويل قيمة اللون السداسي إلى قيمة لون RGB. تأخذ الوظيفة معلمة واحدة ، وهي قيمة اللون السداسي العشري التي تريد تحويلها. تستخدم الوظيفة تعبيرًا عاديًا لمطابقة نمط قيمة اللون السداسي ، وإذا وجدت تطابقًا ، فستعيد كائنًا بقيم الأحمر والأخضر والأزرق. إذا لم يتم العثور على تطابق ، فسيتم إرجاعه فارغًا.

التحويل بين الألوان

لا توجد إجابة واحدة تناسب الجميع على هذا السؤال ، لأن أفضل طريقة لتحويل الألوان بين فراغات لونية مختلفة قد تختلف تبعًا للاحتياجات المحددة للتطبيق الخاص بك. ومع ذلك ، يمكن العثور أدناه على بعض النصائح حول كيفية تحويل الألوان بين فراغات الألوان في JavaScript.

لتحويل لون من فراغ لوني إلى آخر ، يمكنك استخدام الوظيفتين rgb () و hsl (). تأخذ هذه الدوال ثلاث وسيطات: قيمة حمراء ، وخضراء ، وزرقاء ، على التوالي. تحدد الوسيطة الأولى مساحة اللون الأساسية (مثل RGB) ، بينما تحدد الوسيطتان الثانية والثالثة مساحة اللون المستهدفة (مثل HSL).

لتحويل لون من تنسيق بكسل واحد إلى تنسيق آخر ، يمكنك استخدام وظيفة css (). تأخذ هذه الوظيفة وسيطين: سلسلة تمثل اسم خاصية CSS (مثل "اللون") ورقم يمثل القيمة المطلوبة لتلك الخاصية (على سبيل المثال "50").

تنسيقات الألوان

هناك عدد قليل من تنسيقات الألوان المختلفة التي يمكنك استخدامها في JavaScript.

RGB - أحمر ، أخضر ، أزرق

عرافة - #RRGGBB

HSL - تدرج اللون والتشبع والخفة

الوظائف ذات الصلة:

اترك تعليق