تحويل Hex إلى رمادي حسب سطوع Rec. 709
حوّل #3498DB إلى رمادي بسطوع Rec. 709: المجموع 0.2126 × الأحمر + 0.7152 × الأخضر + 0.0722 × الأزرق يساوي 135.5774، ويُقرَّب إلى 136، أي الرمادي المحايد #888888. مجاناً في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- Hex
- #3498DB
- HEX المدخل
- #3498db
- الرمادي (سداسي عشري)
- #888888
- قيمة الرمادي
- 136
- اللمعان
- 135.5774
يحوّل هذا المحوّل لونًا بالتنسيق الصارم #RRGGBB إلى رمادي محايد باستخدام أوزان سطوع Rec. 709. يمنح الأخضر التأثير الأكبر، ثم الأحمر فالأزرق، ولذلك يمثّل السطوع المدرك بدقة أفضل من المتوسط البسيط. تتضمن الاستجابة الإدخال الموحّد وقنوات RGB والسطوع قبل التقريب والقيمة الرمادية المقرّبة ورمز Hex الرمادي والصيغة. وتُرفض الصيغ المختصرة والقيم من دون علامة المربع وقنوات ألفا والمسافات والمحارف غير الست عشرية بوضوح من دون تخمين أو تصحيح صامت.
لماذا تنتج أوزان Rec. 709 قيمة رمادية مفيدة
يعامل المتوسط الحسابي الأحمر والأخضر والأزرق كما لو كانت كل قناة تسهم بالمقدار نفسه في السطوع الظاهر، لكن العين البشرية لا تستجيب لهذه الألوان الأساسية بالتساوي. يبدو الأخضر عادةً أكثر سطوعًا بكثير من الأزرق عند القيمة الرقمية نفسها، ويقع الأحمر بينهما. يطبّق هذا المحوّل معاملات luma الخاصة بمعيار Rec.
709: القيمة 0.2126 للأحمر، و0.7152 للأخضر، و0.0722 للأزرق. تُجمع المساهمات الثلاث الموزونة، ثم تُقرّب النتيجة إلى أقرب عدد صحيح. وتُكرّر هذه القيمة في قنوات الأحمر والأخضر والأزرق لتكوين رمادي محايد من ست خانات.
تفيد هذه الطريقة خصوصًا عندما يحتاج مسار تصميم أو برنامج إلى قيمة رمادية واحدة معقولة إدراكيًا لتمثيل لون RGB. وهي تتجنب تشوهات السطوع الواضحة التي يسببها المتوسط الحسابي، مع بقائها شفافة وسريعة وسهلة الاستنساخ بلغة برمجة أخرى. تعرض الاستجابة السطوع المحسوب والعدد الصحيح النهائي معًا، ولذلك يمكنكم فصل نتيجة الترجيح عن خطوة التقريب ومراجعة التحويل من دون الاعتماد على إعداد خفي في محرر صور.
الاستخدامات الموثوقة والحدود ونصائح الاختبار
استخدموا هذا التحويل لرموز لوحة الألوان المنفردة، ومتغيرات CSS، وبيانات الاختبار، وألوان المخططات، والمعاينات أحادية اللون، أو لأي مسار يستقبل قيمة RGB Hex صحيحة من ست خانات ويحتاج إلى رمادي محايد قابل لإعادة الإنتاج. هذه عملية على قيمة لون وليست معالج صور؛ فهي لا تنزّل ملفات، ولا تفحص البكسلات، ولا تحفظ الشفافية، ولا تنشئ تدرجات، ولا تقيّم تباين WCAG، ولا تعدّل لوحة ألوان كاملة. كذلك لا تحوّل قنوات sRGB إلى صيغة خطية قبل تطبيق المعاملات؛ بل تطبّق أوزان luma الخاصة بـ Rec.
709 مباشرة على القنوات الصحيحة المرمّزة، وهي الصيغة الحتمية التقليدية المطلوبة في كثير من مسارات التحويل من Hex إلى الرمادي. للاختبار المتين، ضمّنوا حدي الأسود والأبيض، ولونًا رماديًا محايدًا أصلًا، ولونًا يغلب عليه الأخضر، وآخر يغلب عليه الأزرق، وإدخالًا بأحرف كبيرة، وعدة تنسيقات غير صالحة. احتفظوا بالرمز الأصلي إذا كانت قابلية العكس مهمة، لأن التحويل إلى الرمادي يحذف درجة اللون ولا يستطيع إعادة بناء اللون الأصلي.
وعند مقارنة النتائج بأدوات أخرى، تحققوا من صيغتها أولًا؛ فقد تنتج معاملات BT.601 والمتوسط المتساوي والسطوع المحوّل خطيًا بغاما والاقتطاع وإعدادات محررات الصور أرقامًا مختلفة مع أن اسم العملية واحد. تصرّح هذه القدرة بصيغتها في كل استجابة حتى تصبح الفروق قابلة للتفسير.
حالات الاستخدام
توحيد رموز التصميم
حوّلوا ألوان Hex للعلامة التجارية والواجهة إلى قيم رمادية ثابتة للسمات أحادية اللون ومراجعات التصميم.
إنشاء بيانات اختبار حتمية
أنشئوا قيمًا رمادية قابلة للمراجعة لاختبار أدوات الألوان من دون الاعتماد على canvas في المتصفح أو مكتبة صور.
إعداد ألوان مخططات أحادية
حوّلوا ألوان السلاسل إلى قيم محايدة موزونة إدراكيًا لمعاينات الرمادي ومسارات الطباعة.
الأسئلة الشائعة
ما الصيغة المستخدمة؟
يحسب المحوّل 0.2126R + 0.7152G + 0.0722B، ثم يقرّب النتيجة إلى أقرب عدد صحيح.
ما تنسيقات Hex المقبولة؟
تُقبل علامة مربع تتبعها ست خانات ست عشرية بالضبط فقط: #RRGGBB. ويجوز أن تكون الأحرف كبيرة أو صغيرة.
هل تُقبل الألوان المختصرة أو التي تحتوي على ألفا؟
لا. تُرفض #RGB و#RRGGBBAA للحفاظ على عقد إدخال صارم لا يحتمل اللبس.
لماذا قد تعرض أداة أخرى قيمة رمادية مختلفة؟
قد تستخدم متوسطًا متساويًا، أو معاملات BT.601، أو سطوعًا محوّلًا خطيًا بغاما، أو الاقتطاع، أو نموذجًا رماديًا آخر.
ما الرمادي الذي يعطيه #3498DB بسطوع Rec. 709؟
يعطي #888888. فمع أحمر 52 وأخضر 152 وأزرق 219 يكون المجموع الموزون 135.5774، ويُقرَّب إلى قيمة رمادي 136 تتكرر في القنوات الثلاث.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/color/grayscale-luminance \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"hex":"#3498db"}'const res = await fetch("https://api.kit.forhosting.com/color/grayscale-luminance", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"hex": "#3498db"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/grayscale-luminance",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"hex": "#3498db"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/grayscale-luminance", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"hex":"#3498db"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"hex":"#3498db"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/grayscale-luminance", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"hex": "#3498db"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.grayscale_luminance",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
لماذا تنتج أوزان Rec. 709 قيمة رمادية مفيدة
ولأن جميع المعاملات وقاعدة التقريب ثابتة، فإن الإدخال نفسه ينتج دائمًا JSON نفسه.
كيفية إرسال اللون وفهم الاستجابة
أرسلوا كائنًا يحتوي على الحقل hex، مثل #3498db. التحقق صارم عن قصد: يجب أن تكون القيمة سلسلة تبدأ بعلامة مربع، ثم تتبعها ست خانات ست عشرية بالضبط. تُقبل الأحرف الكبيرة والصغيرة، لكن تُرفض الصيغة المختصرة ذات الخانات الثلاث، وترميز ألفا ذي الخانات الثماني، والبادئة 0x، والمسافات، وأسماء ألوان CSS، والقيمة التي لا تبدأ بعلامة المربع. يجعل هذا العقد المحدد الأتمتة أكثر أمانًا، لأن مكتبة أخرى لن تستطيع تفسير البيانات المشوهة بطريقة مختلفة. ويحدد الحقل formula المعاملات الدقيقة. عند النجاح، يحتوي input_hex على نسخة موحدة بالأحرف الصغيرة من المصدر. ويفصل input_rgb بايتات الأحمر والأخضر والأزرق في أعداد صحيحة عشرية. يعرض luminance المجموع الموزون بأربع منازل عشرية، بينما يعرض gray_value ذلك المجموع بعد تقريبه إلى أقرب عدد صحيح. وينسّق gray_hex العدد الصحيح كبايت ست عشري من خانتين مكرر ثلاث مرات. تكلف الأتمتة عبر API مبلغ $0.002 لكل طلب ناجح، وتخدم المتصفح دالة solve النقية نفسها. تستخدم أخطاء التحقق invalid_input، مما يتيح لكم تمييز اللون غير الصحيح من مشكلة البنية التحتية وإظهار إرشاد تصحيح واضح للشخص الذي قدّم القيمة.
الاستخدامات الموثوقة والحدود ونصائح الاختبار
اختبروا gray_value وgray_hex معًا ليظهر أي تغيير مستقبلي في التقريب أو التنسيق.
أسئلة تقنية
ما تكلفة التحويل عبر API؟
يكلف كل طلب API ناجح مبلغ $0.002. ولا تترتب رسوم API على التنفيذ في المتصفح.