منتقي الألوان البسيط: اختر ونسخ قيم الألوان RGB وHex وCMYK
منتقي ألوان سهل الاستخدام مع عرض طيف تفاعلي وشريط سطوع. اختر الألوان بصريًا أو أدخل القيم الدقيقة بصيغ RGB أو Hex أو CMYK. انسخ رموز الألوان بنقرة واحدة لمشاريع التصميم الخاصة بك.
اختيار اللون
RGB (0-255)
CMYK (0-100)
اختيار اللون
الوثائق
أداة اختيار الألوان البسيطة وسهلة الاستخدام
المقدمة
أداة اختيار الألوان هي تطبيق بديهي وسهل الاستخدام مصمم لمساعدة المستخدمين على اختيار الألوان وتصورها وتحويلها عبر تنسيقات الألوان المتعددة. سواء كنت مصمم ويب تقوم بإنشاء نظام ألوان، أو فنان رقمي تبحث عن الظل المثالي، أو مطور يقوم بتنفيذ واجهة مستخدم، فإن هذه الأداة توفر طريقة بسيطة للعمل مع الألوان في تنسيقات RGB، Hexadecimal، CMYK، وHSV. مع طيف الألوان التفاعلي، ومنزلق السطوع، وخيارات الإدخال الدقيقة، يمكنك بسرعة العثور على قيم الألوان وضبطها ونسخها لمشاريعك.
فهم نماذج الألوان
قبل الغوص في كيفية استخدام أداة اختيار الألوان، من المفيد فهم نماذج الألوان المختلفة التي تدعمها:
RGB (الأحمر، الأخضر، الأزرق)
RGB هو نموذج لون إضافي حيث يتم دمج الضوء الأحمر والأخضر والأزرق بطرق مختلفة لإعادة إنتاج مجموعة واسعة من الألوان. في التطبيقات الرقمية:
- كل مكون (R، G، B) يتراوح من 0 إلى 255
- RGB(255، 0، 0) يمثل الأحمر النقي
- RGB(0، 255، 0) يمثل الأخضر النقي
- RGB(0، 0، 255) يمثل الأزرق النقي
- RGB(255، 255، 255) يمثل الأبيض
- RGB(0، 0، 0) يمثل الأسود
نموذج RGB مرتبط مباشرة بكيفية عرض الألوان على الشاشات، مما يجعله الخيار الأساسي للتصميم الرقمي.
Hexadecimal (Hex)
تعتبر رموز الألوان السداسية طريقة لتمثيل ألوان RGB باستخدام نظام عددي أساسي 16:
- يبدأ لون Hex بعلامة باوند (#) تليها ستة أحرف
- يمثل الزوج الأول الأحمر، والزوج الثاني الأخضر، والزوج الثالث الأزرق
- يتراوح كل زوج من 00 إلى FF (0-255 في النظام العشري)
- #FF0000 يمثل الأحمر النقي
- #00FF00 يمثل الأخضر النقي
- #0000FF يمثل الأزرق النقي
- يتوفر اختصار لبعض الألوان (مثل #F00 للأحمر)
تستخدم رموز Hex على نطاق واسع في تطوير الويب (CSS، HTML) وتطبيقات التصميم الرقمي.
CMYK (سماوي، أرجواني، أصفر، مفتاح/أسود)
CMYK هو نموذج لون تنازلي يستخدم بشكل أساسي في الطباعة الملونة:
- يتراوح كل مكون من 0% إلى 100%
- CMYK(0، 100، 100، 0) يمثل الأحمر النقي
- CMYK(100، 0، 100، 0) يمثل الأخضر النقي
- CMYK(100، 100، 0، 0) يمثل الأزرق النقي
- CMYK(0، 0، 0، 100) يمثل الأسود
- CMYK(0، 0، 0، 0) يمثل الأبيض (لون الورق)
بينما يُستخدم بشكل أساسي للطباعة، فإن فهم قيم CMYK يمكن أن يكون مفيدًا عند تصميم محتوى سيتم طباعته في النهاية.
HSV (لون، تشبع، قيمة)
يمثل HSV الألوان من حيث:
- اللون: نوع اللون (أحمر، أصفر، أخضر، إلخ)، يقاس بالدرجات (0-360°)
- التشبع: كثافة أو نقاء اللون (0-100%)
- القيمة: سطوع اللون (0-100%)
يعتبر HSV مفيدًا بشكل خاص لاختيار الألوان لأنه يفصل اختيار اللون (اللون) عن كثافته (التشبع) ودرجة سطوعه (القيمة)، مما يجعل من السهل ضبط الألوان.
صيغ تحويل الألوان
تقوم أداة اختيار الألوان تلقائيًا بتحويل الألوان بين نماذج الألوان المختلفة باستخدام هذه الصيغ الرياضية:
تحويل RGB إلى Hex
لتحويل RGB إلى سداسي:
- تحويل كل مكون RGB (0-255) إلى رقم سداسي مكون من رقمين
- دمج القيم السداسية الثلاثة مع بادئة #
حيث toHex()
تقوم بتحويل رقم عشري إلى تمثيله السداسي.
تحويل RGB إلى CMYK
يتضمن التحويل من RGB إلى CMYK هذه الخطوات:
- تطبيع قيم RGB إلى النطاق 0-1
- حساب مكون المفتاح الأسود (K)
- حساب C وM وY بناءً على K
تحويل RGB إلى HSV
لتحويل RGB إلى HSV:
للون (H):
0° & \text{إذا كانت } \Delta = 0 \\ 60° \times (\frac{G' - B'}{\Delta} \mod 6) & \text{إذا كانت } C_{max} = R' \\ 60° \times (\frac{B' - R'}{\Delta} + 2) & \text{إذا كانت } C_{max} = G' \\ 60° \times (\frac{R' - G'}{\Delta} + 4) & \text{إذا كانت } C_{max} = B' \end{cases}$$ للتشبع (S): $$S = \begin{cases} 0 & \text{إذا كانت } C_{max} = 0 \\ \frac{\Delta}{C_{max}} \times 100\% & \text{بخلاف ذلك} \end{cases}$$ للقيمة (V): $$V = C_{max} \times 100\%$$ ## كيفية استخدام أداة اختيار الألوان توفر أداة اختيار الألوان لدينا طرقًا متعددة لاختيار الألوان وضبطها. إليك دليل خطوة بخطوة حول كيفية استخدام كل ميزة: ### استخدام طيف الألوان 1. **اختر لونًا أساسيًا**: انقر أو اضغط في أي مكان على طيف الألوان لاختيار لون أساسي. تحدد الموضع الأفقي اللون، بينما يؤثر الموضع العمودي على التشبع. 2. **ضبط الاختيار بدقة**: يمكنك سحب دائرة المحدد للعثور على ظل اللون المثالي. 3. **عرض معاينة اللون**: بينما تتحرك بالمحدد، يتم تحديث منطقة معاينة اللون في الوقت الحقيقي، مما يعرض اختيارك الحالي. ### ضبط السطوع 1. **استخدم منزلق السطوع**: أسفل طيف الألوان، ستجد منزلقًا أفقيًا يتحكم في سطوع (قيمة) اللون المحدد. 2. **اسحب لليسار أو لليمين**: حرك المنزلق إلى اليسار لتعتيم اللون أو إلى اليمين لتفتيحه. 3. **راقب التغييرات**: يتم تحديث معاينة اللون وجميع قيم الألوان على الفور أثناء ضبط السطوع. ### إدخال قيم الألوان الدقيقة للحصول على اختيار لون دقيق، يمكنك إدخال القيم مباشرة في أي من التنسيقات المدعومة: #### إدخال Hex 1. أدخل رمز لون سداسي صالح في حقل Hex (مثل #FF5733) 2. يتم التحقق من صحة الإدخال تلقائيًا 3. اضغط على Enter أو انقر خارج الحقل لتطبيق اللون #### إدخال RGB 1. أدخل قيمًا بين 0-255 لكل مكون RGB 2. يتم تحديث جميع حقول تنسيق الألوان الأخرى تلقائيًا 3. سيتم تقليم القيم غير الصالحة (خارج 0-255) إلى النطاق الصالح #### إدخال CMYK 1. أدخل قيم النسبة المئوية (0-100) للسماوي والأرجواني والأصفر والأسود 2. يتم تحديث التنسيقات اللونية الأخرى بناءً على إدخالك لـ CMYK 3. سيتم ضبط القيم خارج النطاق 0-100 تلقائيًا ### نسخ قيم الألوان 1. **انقر على زر النسخ**: بجوار كل تنسيق لون، ستجد زر النسخ (رمز الحافظة) 2. **ردود الفعل الفورية**: بعد النقر، تظهر رسالة "تم النسخ!" لفترة وجيزة 3. **الصق في أي مكان**: يمكن الآن لصق القيمة المنسوخة في برنامج التصميم الخاص بك، أو محرر الأكواد، أو أي تطبيق آخر ## حالات الاستخدام تخدم أداة اختيار الألوان مجموعة متنوعة من الأغراض عبر مجالات مختلفة: ### تطوير الويب يمكن لمطوري الويب استخدام أداة اختيار الألوان لـ: - اختيار الألوان لموضوعات المواقع ومكونات واجهة المستخدم - العثور على تركيبات ألوان قابلة للوصول تلبي إرشادات WCAG - التحويل بين رموز Hex (المستخدمة في CSS) وقيم RGB - إنشاء لوحات ألوان لعلامة تجارية متسقة عبر المواقع مثال على سير العمل: 1. استخدم طيف الألوان للعثور على لون أساسي لموضوع موقع الويب 2. اضبط السطوع لإنشاء تباينات لحالات التمرير والخلفيات 3. انسخ رمز hex مباشرة في أوراق أنماط CSS 4. استخدم قيم RGB لوظائف rgba() عند الحاجة إلى الشفافية ### التصميم الجرافيكي يستفيد مصممو الجرافيك من: - اختيار الألوان بدقة للفنون الرقمية - التحويل بين RGB (للرقمي) وCMYK (للطباعة) - إنشاء أنظمة ألوان متناغمة - مطابقة ألوان العلامة التجارية المحددة مثال على سير العمل: 1. أدخل لون علامة تجارية محدد في تنسيق hex 2. استخدم طيف الألوان للعثور على ألوان مكملة 3. تحقق من قيم CMYK لضمان التوافق مع الطباعة 4. انسخ القيم في برنامج التصميم مثل Adobe Illustrator أو Photoshop ### تصميم واجهة المستخدم وتجربة المستخدم يمكن لمصممي واجهة المستخدم وتجربة المستخدم: - اختيار الألوان التي تعزز القابلية للاستخدام وقراءة النص - إنشاء أنظمة ألوان متسقة للتطبيقات - اختبار تركيبات ألوان مختلفة بسرعة - ضمان وجود تباين كافٍ بين النصوص وخلفيات الألوان مثال على سير العمل: 1. اختر لونًا أساسيًا باستخدام طيف الألوان 2. اضبط السطوع لإنشاء ألوان ثانوية وثالثية 3. اختبر تركيبات مختلفة في منطقة المعاينة 4. انسخ القيم في أنظمة التصميم أو أدوات النمذجة ### الفن الرقمي يستخدم الفنانون الرقميون أدوات اختيار الألوان لـ: - العثور على الظل المثالي للوحات الرقمية - إنشاء لوحات ألوان مخصصة - مطابقة الألوان من صور المرجع - تجربة مفاهيم نظرية الألوان مثال على سير العمل: 1. استخدم عناصر التحكم في HSV لاختيار لون محدد 2. اضبط التشبع والسطوع لتحقيق التأثير المطلوب 3. انسخ قيم RGB في برنامج الرسم الرقمي 4. أنشئ تباينات عن طريق ضبط اللون أو التشبع قليلاً ### التعليم تعمل أداة اختيار الألوان كأداة تعليمية لـ: - تدريس مفاهيم نظرية الألوان - توضيح تحويلات نماذج الألوان - شرح تمثيل الألوان الرقمية - مساعدة الطلاب على فهم العلاقات اللونية مثال على سير العمل: 1. أظهر كيف أن ضبط اللون يغير اللون مع الحفاظ على السطوع 2. قم بتوضيح كيف ترتبط قيم RGB بالألوان المرئية 3. اشرح العلاقة بين رموز hex وقيم RGB 4. وضح كيف يختلف CMYK عن RGB للطباعة مقابل التطبيقات الرقمية ### البدائل بينما توفر أداة اختيار الألوان لدينا وظائف شاملة، هناك طرق بديلة لاختيار الألوان: #### مولدات لوحات الألوان تركز أدوات مثل Adobe Color وCoolors وPaletton على إنشاء أنظمة ألوان متناغمة بدلاً من اختيار ألوان فردية. إنها مثالية عندما تحتاج إلى تطوير لوحة ألوان كاملة بناءً على مبادئ نظرية الألوان. #### مستخلصات الألوان المعتمدة على الصور تسمح لك أدوات مثل ColorZilla وImageColorPicker باستخراج الألوان مباشرة من الصور أو من أي مكان على الشاشة. هذه مفيدة بشكل خاص عندما تحتاج إلى مطابقة الألوان الموجودة من الصور الفوتوغرافية أو التصميمات. #### أنظمة الألوان المادية بالنسبة للأعمال التي تركز على الطباعة، توفر أنظمة الألوان المادية مثل Pantone وCMYK وRAL مراجع معيارية تضمن دقة الألوان عبر عمليات الطباعة المختلفة. #### أدوات البرامج المدمجة تتضمن معظم برامج التصميم (Adobe Photoshop وIllustrator وFigma، إلخ) أدوات اختيار ألوان مدمجة. على الرغم من كونها مريحة، إلا أن هذه الأدوات غالبًا ما تكون محدودة للتطبيق ولا توفر التحويل عبر التنسيقات الذي تقدمه أداتنا. ## تاريخ اختيار الألوان الرقمية يتوازى تطور أدوات اختيار الألوان مع تطور التصميم الرقمي نفسه: ### الألوان الرقمية المبكرة (1970-1980) كانت أنظمة الألوان الرقمية الأولى محدودة بشدة بسبب قيود الأجهزة: - كانت الشاشات الأولى للكمبيوتر قادرة على عرض 16 أو 256 لونًا فقط - تم اختيار الألوان من لوحات محددة مسبقًا - تم تطوير لوحة الألوان الآمنة للويب (216 لونًا) لضمان التوافق عبر المتصفحات ### معايير RGB وHex (1990) مع تقدم التكنولوجيا: - أصبح اللون 24 بت معيارًا، مما يسمح بعرض 16.7 مليون لون - تم اعتماد التدوين السداسي لـ HTML وCSS - ظهرت أدوات اختيار الألوان الأساسية في برامج التصميم - كان مصممو الويب محدودين بالألوان المسماة ورموز hex ### اختيار الألوان الحديثة (2000-الحاضر) تعكس أدوات اختيار الألوان اليوم فهمنا المتطور للألوان الرقمية: - أدوات اختيار الألوان في الوقت الحقيقي مع واجهات بصرية - دعم لعدة نماذج ألوان (RGB، HSL، HSV، CMYK) - أدوات وصول الألوان للتحقق من نسب التباين - خوارزميات تناغم الألوان المتقدمة - تكامل مع أنظمة التصميم ومكتبات المكونات يستمر تطوير أدوات اختيار الألوان في التطور مع تقدم تكنولوجيا العرض، وعلم الألوان، ومنهجيات التصميم. ## اعتبارات الوصول للألوان عند اختيار الألوان، من المهم مراعاة إمكانية الوصول للمستخدمين الذين يعانون من نقص رؤية الألوان: ### أنواع عمى الألوان - **بروتانوبيا**: صعوبة في إدراك الألوان الحمراء - **ديترانوبيا**: صعوبة في إدراك الألوان الخضراء - **تريتانوبيا**: صعوبة في إدراك الألوان الزرقاء - **أكروماتوبسيا**: عمى الألوان الكامل (رؤية فقط بالأبيض والأسود) ### نصائح للوصول 1. **لا تعتمد فقط على اللون** لنقل المعلومات 2. **تأكد من وجود تباين كافٍ** بين النص والخلفية (الحد الأدنى 4.5:1 للنص العادي) 3. **استخدم الأنماط أو القوام** بالإضافة إلى الألوان في الرسوم البيانية 4. **اختبر اختيارات الألوان الخاصة بك** باستخدام محاكيات عمى الألوان 5. **فكر في استخدام لوحات ألوان صديقة لعمى الألوان** التي تتجنب التركيبات اللونية الإشكالية ## الأسئلة الشائعة ### ما الفرق بين نماذج الألوان RGB وCMYK؟ RGB (الأحمر، الأخضر، الأزرق) هو نموذج لون إضافي يُستخدم لعرض الألوان الرقمية حيث يتم إنشاء الألوان عن طريق إضافة الضوء. CMYK (سماوي، أرجواني، أصفر، أسود) هو نموذج تنازلي يُستخدم في الطباعة حيث يتم إنشاء الألوان عن طريق امتصاص (طرح) الضوء. ينتج RGB ألوانًا أكثر سطوعًا وحيوية مثالية للوسائط الرقمية، بينما عادةً ما يكون لـ CMYK نطاق ألوان أكثر محدودية يناسب المواد المطبوعة بشكل أفضل. ### لماذا تبدو الألوان مختلفة على شاشتي مقارنةً عند الطباعة؟ يحدث هذا الاختلاف لأن الشاشات تستخدم نموذج لون RGB الذي يمكنه عرض نطاق أوسع من الألوان مما هو ممكن مع أحبار الطباعة CMYK. بالإضافة إلى ذلك، تصدر الشاشات الضوء بينما تعكس المواد المطبوعة. تساهم اختلافات المعايرة بين الأجهزة، وجودة الورق، وتباينات الأحبار أيضًا في هذا التباين. بالنسبة للأعمال التي تركز على الطباعة، تحقق دائمًا من قيم CMYK وفكر في طلب نماذج فعلية. ### كيف يمكنني العثور على رمز hex للون معين أراه عبر الإنترنت؟ يمكنك استخدام ملحقات المتصفح مثل ColorZilla أو أدوات المطورين المدمجة. في Chrome أو Firefox، انقر بزر الماوس الأيمن على العنصر، واختر "Inspect"، ثم استخدم أداة اختيار اللون في لوحة المطور. بدلاً من ذلك، يمكنك أخذ لقطة شاشة وتحميلها إلى أداة اختيار الألوان الخاصة بنا، ثم انقر على اللون المطلوب للحصول على رمز hex الخاص به. ### ما هي أفضل طريقة لإنشاء نظام ألوان متماسك؟ ابدأ بلون أساسي يمثل علامتك التجارية أو مزاج مشروعك. ثم استخدم مبادئ نظرية الألوان مثل الألوان التكميلية (المقابلة على دائرة الألوان)، أو المتجاورة (المجاورة على دائرة الألوان)، أو الثلاثية (المتباعدة بالتساوي حول دائرة الألوان) لاختيار ألوان إضافية. اضبط التشبع والسطوع لإنشاء تسلسل هرمي. تساعدك أداة اختيار الألوان لدينا في تصور هذه العلاقات وضبط اختياراتك. ### كيف يمكنني التأكد من أن الألوان التي اخترتها قابلة للوصول؟ تحقق من نسبة التباين بين ألوان النص والخلفية باستخدام أدوات مثل WebAIM Contrast Checker. بالنسبة للنص العادي، استهدف نسبة حد أدنى تبلغ 4.5:1، وللنص الكبير، 3:1. تجنب التركيبات اللونية الإشكالية لمستخدمي عمى الألوان (مثل الأحمر/الأخضر). اختبر تصميمك باستخدام محاكيات عمى الألوان. تذكر أن حوالي 8% من الرجال و0.5% من النساء لديهم شكل من أشكال نقص رؤية الألوان. ### ماذا تعني علامة # في رموز الألوان السداسية؟ تشير علامة الباوند أو علامة الشباك (#) إلى أن الأحرف التالية تمثل رمز لون سداسي. إنها تدوين قياسي في HTML وCSS والعديد من تطبيقات التصميم. تمثل الأرقام الستة التي تليها قيم RGB بالتنسيق الأساسي 16، حيث يمثل الزوج الأول الأحمر، والزوج الثاني الأخضر، والزوج الثالث الأزرق. ### كيف يمكنني تحويل لون من RGB إلى CMYK للطباعة؟ تقوم أداة اختيار الألوان لدينا بتحويل قيم RGB تلقائيًا إلى مكافئاتها في CMYK. ما عليك سوى إدخال قيم RGB الخاصة بك، وستظهر قيم CMYK المقابلة. ومع ذلك، لاحظ أن بعض ألوان RGB تقع خارج نطاق CMYK ولا يمكن إعادة إنتاجها بدقة في الطباعة. توفر برامج التصميم الاحترافية مثل Adobe Illustrator أو Photoshop أيضًا تحويل وضع الألوان مع تحذيرات النطاق. ### لماذا توجد رموز hex مكونة من 3 أرقام و6 أرقام؟ رمز hex المكون من 3 أرقام هو تدوين مختصر يمكن استخدامه عندما تحتوي كل مجموعة على أرقام متطابقة. على سبيل المثال، يمكن اختصار #FF0000 إلى #F00 لأن F=FF، و0=00، و0=00. يعمل هذا الاختصار فقط للألوان التي يمكن تمثيل كل قناة فيها بأرقام مكررة. تم تقديمه في الأصل لتوفير حجم الملف في الأيام الأولى للويب ولكنه لا يزال اختصارًا مريحًا. ### ما مدى دقة تحويلات الألوان بين النماذج المختلفة؟ تكون التحويلات بين RGB وhex دقيقة رياضيًا لأنها تمثيلات مباشرة لنفس القيم بتنسيقات مختلفة. التحويلات بين RGB وCMYK هي تقريبات بسبب الاختلافات الأساسية في نطاقات الألوان والخصائص الفيزيائية لانبعاث الضوء مقابل امتصاص الحبر. تستخدم أداتنا صيغًا قياسية صناعية لتوفير أدق تحويلات ممكنة ضمن هذه القيود. ### هل يمكنني حفظ أو تصدير الألوان التي اخترتها؟ حاليًا، يمكنك نسخ قيم الألوان الفردية إلى الحافظة الخاصة بك. نوصي بإنشاء مستند أو استخدام أداة لوحة ألوان مخصصة لحفظ ألوان متعددة لمشاريعك. قد تتضمن التحديثات المستقبلية ميزات لحفظ لوحات الألوان مباشرة داخل الأداة. ## أمثلة على الأكواد لتحويل الألوان إليك بعض أمثلة الأكواد التي توضح كيفية التحويل بين تنسيقات الألوان المختلفة:1// تحويل RGB إلى Hex
2function rgbToHex(r, g, b) {
3 const toHex = (c) => {
4 const hex = Math.round(c).toString(16);
5 return hex.length === 1 ? '0' + hex : hex;
6 };
7
8 return `#${toHex(r)}${toHex(g)}${toHex(b)}`;
9}
10
11// تحويل Hex إلى RGB
12function hexToRgb(hex) {
13 // إزالة # إذا كانت موجودة
14 const cleanHex = hex.startsWith('#') ? hex.slice(1) : hex;
15
16 // التعامل مع كل من hex المكون من 3 أرقام و6 أرقام
17 const expandedHex = cleanHex.length === 3
18 ? cleanHex.split('').map(char => char + char).join('')
19 : cleanHex;
20
21 const r = parseInt(expandedHex.substring(0, 2), 16);
22 const g = parseInt(expandedHex.substring(2, 4), 16);
23 const b = parseInt(expandedHex.substring(4, 6), 16);
24
25 return { r, g, b };
26}
27
28// تحويل RGB إلى CMYK
29function rgbToCmyk(r, g, b) {
30 // تطبيع قيم RGB
31 const normalizedR = r / 255;
32 const normalizedG = g / 255;
33 const normalizedB = b / 255;
34
35 // حساب K (الأسود)
36 const k = 1 - Math.max(normalizedR, normalizedG, normalizedB);
37
38 // التعامل مع الأسود النقي
39 if (k === 1) {
40 return { c: 0, m: 0, y: 0, k: 100 };
41 }
42
43 // حساب C وM وY
44 const c = ((1 - normalizedR - k) / (1 - k)) * 100;
45 const m = ((1 - normalizedG - k) / (1 - k)) * 100;
46 const y = ((1 - normalizedB - k) / (1 - k)) * 100;
47
48 return {
49 c: Math.round(c),
50 m: Math.round(m),
51 y: Math.round(y),
52 k: Math.round(k * 100)
53 };
54}
55
56// مثال على الاستخدام
57const rgb = { r: 255, g: 0, b: 0 }; // أحمر نقي
58console.log(`Hex: ${rgbToHex(rgb.r, rgb.g, rgb.b)}`);
59console.log(`CMYK:`, rgbToCmyk(rgb.r, rgb.g, rgb.b));
60
1# تحويل RGB إلى Hex
2def rgb_to_hex(r, g, b):
3 return f'#{r:02x}{g:02x}{b:02x}'
4
5# تحويل Hex إلى RGB
6def hex_to_rgb(hex_color):
7 # إزالة # إذا كانت موجودة
8 hex_color = hex_color.lstrip('#')
9
10 # التعامل مع كل من hex المكون من 3 أرقام و6 أرقام
11 if len(hex_color) == 3:
12 hex_color = ''.join([c*2 for c in hex_color])
13
14 return {
15 'r': int(hex_color[0:2], 16),
16 'g': int(hex_color[2:4], 16),
17 'b': int(hex_color[4:6], 16)
18 }
19
20# تحويل RGB إلى CMYK
21def rgb_to_cmyk(r, g, b):
22 # تطبيع قيم RGB
23 r_norm = r / 255.0
24 g_norm = g / 255.0
25 b_norm = b / 255.0
26
27 # حساب K (الأسود)
28 k = 1 - max(r_norm, g_norm, b_norm)
29
30 # التعامل مع الأسود النقي
31 if k == 1:
32 return {'c': 0, 'm': 0, 'y': 0, 'k': 100}
33
34 # حساب C وM وY
35 c = ((1 - r_norm - k) / (1 - k)) * 100
36 m = ((1 - g_norm - k) / (1 - k)) * 100
37 y = ((1 - b_norm - k) / (1 - k)) * 100
38
39 return {
40 'c': round(c),
41 'm': round(m),
42 'y': round(y),
43 'k': round(k * 100)
44 }
45
46# مثال على الاستخدام
47rgb = {'r': 0, 'g': 128, 'b': 255} # أزرق سماوي
48hex_color = rgb_to_hex(rgb['r'], rgb['g'], rgb['b'])
49cmyk = rgb_to_cmyk(rgb['r'], rgb['g'], rgb['b'])
50
51print(f"Hex: {hex_color}")
52print(f"CMYK: C={cmyk['c']}%, M={cmyk['m']}%, Y={cmyk['y']}%, K={cmyk['k']}%")
53
1public class ColorConverter {
2 // تحويل RGB إلى Hex
3 public static String rgbToHex(int r, int g, int b) {
4 return String.format("#%02x%02x%02x", r, g, b);
5 }
6
7 // تحويل Hex إلى RGB
8 public static int[] hexToRgb(String hexColor) {
9 // إزالة # إذا كانت موجودة
10 if (hexColor.startsWith("#")) {
11 hexColor = hexColor.substring(1);
12 }
13
14 // التعامل مع كل من hex المكون من 3 أرقام و6 أرقام
15 if (hexColor.length() == 3) {
16 String expandedHex = "";
17 for (char c : hexColor.toCharArray()) {
18 expandedHex += c + String.valueOf(c);
19 }
20 hexColor = expandedHex;
21 }
22
23 int r = Integer.parseInt(hexColor.substring(0, 2), 16);
24 int g = Integer.parseInt(hexColor.substring(2, 4), 16);
25 int b = Integer.parseInt(hexColor.substring(4, 6), 16);
26
27 return new int[]{r, g, b};
28 }
29
30 // تحويل RGB إلى CMYK
31 public static double[] rgbToCmyk(int r, int g, int b) {
32 // تطبيع قيم RGB
33 double normalizedR = r / 255.0;
34 double normalizedG = g / 255.0;
35 double normalizedB = b / 255.0;
36
37 // حساب K (الأسود)
38 double k = 1 - Math.max(Math.max(normalizedR, normalizedG), normalizedB);
39
40 // التعامل مع الأسود النقي
41 if (k == 1) {
42 return new double[]{0, 0, 0, 100};
43 }
44
45 // حساب C وM وY
46 double c = ((1 - normalizedR - k) / (1 - k)) * 100;
47 double m = ((1 - normalizedG - k) / (1 - k)) * 100;
48 double y = ((1 - normalizedB - k) / (1 - k)) * 100;
49
50 return new double[]{
51 Math.round(c),
52 Math.round(m),
53 Math.round(y),
54 Math.round(k * 100)
55 };
56 }
57
58 public static void main(String[] args) {
59 // مثال على الاستخدام
60 int r = 75, g = 0, b = 130; // بنفسجي
61 String hexColor = rgbToHex(r, g, b);
62 double[] cmyk = rgbToCmyk(r, g, b);
63
64 System.out.println("Hex: " + hexColor);
65 System.out.printf("CMYK: C=%.0f%%, M=%.0f%%, Y=%.0f%%, K=%.0f%%\n",
66 cmyk[0], cmyk[1], cmyk[2], cmyk[3]);
67 }
68}
69
المراجع
-
أغوستون، م. ك. (2013). رسوم الكمبيوتر والنمذجة الهندسية: التنفيذ والخوارزميات. Springer Science & Business Media.
-
أنظمة أدوبي. (2000). ترميز صورة لون Adobe RGB (1998). Adobe Systems Incorporated.
-
فير تشايلد، م. د. (2013). نماذج مظهر اللون. John Wiley & Sons.
-
هنت، ر. و. ج.، وبوينتر، م. ر. (2011). قياس اللون. John Wiley & Sons.
-
بويتون، ك. (2012). الفيديو الرقمي وHD: الخوارزميات والواجهات. Elsevier.
-
W3C. (2018). وحدة لون CSS المستوى 4. مسودة عمل W3C. تم الاسترجاع من https://www.w3.org/TR/css-color-4/
-
إرشادات الوصول إلى محتوى الويب (WCAG) 2.1. (2018). تم الاسترجاع من https://www.w3.org/TR/WCAG21/
-
اللجنة الدولية للألوان. (2004). مواصفة ICC.1:2004-10 (إصدار الملف الشخصي 4.2.0.0). تم الاسترجاع من http://www.color.org/specification/ICC1v42_2006-05.pdf
جرب أداة اختيار الألوان لدينا اليوم!
هل أنت مستعد للعثور على اللون المثالي لمشروعك؟ تجعل أداة اختيار الألوان سهلة الاستخدام من السهل اختيار الألوان وضبطها وتحويلها بين تنسيقات مختلفة. سواء كنت تقوم بتصميم موقع ويب، أو إنشاء فنون رقمية، أو تخطيط مواد مطبوعة، توفر أداتنا الدقة والمرونة التي تحتاجها.
ابدأ في تجربة الألوان الآن وارتق بتصاميمك إلى المستوى التالي!
الملاحظات
انقر على إشعار الملاحظات لبدء إعطاء ملاحظات حول هذه الأداة
أدوات ذات صلة
اكتشف المزيد من الأدوات التي قد تكون مفيدة لعملك