لون إلى رمادي
احصل على الرمادي الذي يحفظ سطوع اللون كما تراه العين: يصبح #3498db اللون #828282، بقيمة رمادي 130، لأن للأخضر الوزن الأكبر ثم الأحمر ثم الأزرق. وتُعرض كل خطوة من الحساب. مجاناً في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- لون المصدر بصيغة hex
- #3498db
- القيمة
- 130
- hex الإدخال
- #3498db
- rgb الإدخال
- 52, 152, 219
- المقاومة (Ω)
- 52
يأخذ محول اللون إلى تدرج رمادي لونًا معتمًا—مكتوبًا كرمز hex أو كقنوات أحمر وأخضر وأزرق—ويُسقطه على رمادي محايد يحفظ السطوع المُدرَك بدل متوسط القنوات بسذاجة. الصق #e74c3c أو rgb(52, 152, 219) أو أعدادًا صحيحة r و g و b منفصلة؛ تطبق الأداة أوزان الإضاءة الكلاسيكية 0.299 أحمر و 0.587 أخضر و 0.114 أزرق، وتُقرّب إلى عدد صحيح رمادي من 0 إلى 255، وتعيد ثلاثي hex الرمادي والقيمة العددية وسلسلة CSS بصيغة rgb() والحساب خطوة بخطوة. المصممون الذين يزيلون تشبع رموز العلامة، ومطورو السمات أحادية اللون، ومراجعو إمكانية الوصول الذين يتحققون من التباين بعد إزالة التشبع، والاختبارات الآلية التي تحتاج ثوابت رمادي حتمية، يحتاجون نفس التعيين الموزون دون فتح محرر صور.
لماذا يتفوق وزن الإضاءة على المتوسط البسيط
الرؤية البشرية ليست متساوية الحساسية لضوء الأحمر والأخضر والأزرق. يساهم الأخضر أكثر في السطوع المُدرَك، والأحمر أقل، والأزرق الأقل على الإطلاق. لذلك يبدو أزرق نقي #0000ff أغمق من أخضر نقي #00ff00 رغم أن لكل منهما قناة واحدة عند 255.
متوسط ساذج يجمع القنوات الثلاث ويقسم على ثلاثة يُقلل إذن سطوع لون غني بالأخضر ويُبالغ في نغمات غنية بالأزرق. يصحح وزن الإضاءة ذلك الخلل بمعاملات ثابتة من نموذج luma التلفزيوني الكلاسيكي الذي يُدعى غالبًا BT.601: الرمادي Y يساوي 0.299×أحمر + 0.587×أخضر + 0.114×أزرق، ثم يُقرّب إلى أقرب عدد صحيح في 0–255. الناتج قناة واحدة تُكتب كـ #YY حيث كل زوج هو نفس بايت hex، وتقع على المحور المحايد لمساحة RGB مع الحفاظ على سطوع تقريبي للصبغة الأصلية.
هذه الصفحة أداة لون واحد عمدًا، وليست مرشح صور: تحوّل رمز تصميم أو متغير CSS أو عينة لوحة في كل مرة وتعيد hex رماديًا وقيمة قابلين للتدقيق. تمارين الصف ومقابلات البرمجة تطلب غالبًا هذا التحويل يدويًا؛ مرجع حتمي يزيل الغموض حول الأوزان المستخدمة وكيفية التقريب وما إذا وُسّع hex ثلاثي الأرقام قبل الضرب.
نصائح عملية وحدود وبحوث ذات صلة
لا تمرّر أشكال ألفا مثل #RRGGBBAA أو rgba بألفا ذي معنى يجب حفظه—هذه الصفحة تحوّل RGB معتمًا فقط، وتُرفض الأطوال غير المتوقعة لتلاحظ ذلك بدل إسقاط الألفا بصمت. ألوان CSS المسماة مثل rebeccapurple خارج النطاق؛ حلّها أولًا إلى hex بجدول أسماء ثم استدعِ هذا المحول. عند كتابة اختبارات وحدوية، غطِّ أحمرًا زاهيًا واحدًا على الأقل، وteal يهيمن فيه الأخضر، وأزرقًا نقيًا، وإدخالًا رماديًا مسبقًا يجب أن يعود إلى نفسه، واختصارًا ثلاثي الأرقام، وسلسلة rgb()، و hex غير صالح عمدًا حتى لا تتسلل انحدارات التحقق.
تستهدف هذه الصفحة من يبحث عن محول لون إلى رمادي، أو حاسبة إضاءة hex إلى رمادي، أو أداة RGB إلى قيمة رمادي مجانية عبر الإنترنت؛ ليست مزيل تشبع صور كاملًا، ولا محول مساحات متعددة لـ HSL أو LAB أو CMYK، ولا مولّد لوحات. فضّل هذه القدرة عندما يكون لديك لون واحد وتحتاج فقط hex رمادي الإضاءة وقيمته الصحيحة؛ إن كان خط الأنابيب ما زال يحتاج إخراج HSL أو CMYK للطباعة، استخدم محول ألوان متعدد الصيغ لتلك المساحات وهذه الأداة لخطوة أحادي اللون.
حالات الاستخدام
رموز تصميم أحادية من hex العلامة
يلصق المصممون رموز hex للعلامة ويستلمون hex رماديًا بوزن الإضاءة لسمات أحادية ومسودات طباعة وواجهة معطّلة دون فتح محرر صور.
اختبارات وحدوية لمساعدات إزالة التشبع
أنشئ قيم رمادي مرجعية من ثوابت hex و RGB حتى تؤكد محركات السمات وفحوصات تباين إمكانية الوصول رياضيات إضاءة مستقرة.
تجهيز متغيرات CSS وملء canvas
حوّل ألوان المستخدم من منتقي إلى سلاسل rgb() و hex محايدة لمعاينات رمادية أو طبقات علامة مائية أو متغيرات CSS ملائمة للطباعة.
الأسئلة الشائعة
ما الصيغة التي يستخدمها محول اللون إلى رمادي؟
يكرر hex الرمادي ذلك البايت ثلاث مرات كـ #YY.
ما صيغ اللون المقبولة؟
Hex #RGB أو #RRGGBB (# اختياري)، CSS rgb(r,g,b)، قوائم r,g,b عارية، أو حقول صحيحة منفصلة r و g و b من 0–255. لا تُقبل ألفا ولا ألوان CSS المسماة.
إلى أي رمادي يتحول اللون #3498db؟
يتحول إلى #828282. المجموع الموزون هو 0.299 × 52 + 0.587 × 152 + 0.114 × 219 = 129.738، ويُقرَّب إلى قيمة رمادي 130، أي rgb(130, 130, 130).
لماذا لا يُحسب متوسط بسيط للأحمر والأخضر والأزرق؟
لأن العين لا ترى الألوان الثلاثة بالسطوع نفسه. فالأخضر يسهم أكثر في السطوع والأزرق أقل، لذا يجعل المتوسط البسيط الألوان المائلة إلى الأخضر أغمق والمائلة إلى الأزرق أفتح؛ ولهذا يبدو #0000ff أغمق من #00ff00.
هل يمكنني إدخال الأحمر والأخضر والأزرق كلٌّ على حدة؟
نعم. بدلاً من الرمز الست عشري يمكنك إدخال القنوات الثلاث كأعداد صحيحة من 0 إلى 255، أو لصق صيغة مثل rgb(52, 152, 219). وتُرفض الكسور والقيم خارج هذا النطاق.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/color/grayscale \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#3498db","hex":"valor-ejemplo"}'const res = await fetch("https://api.kit.forhosting.com/color/grayscale", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#3498db",
"hex": "valor-ejemplo"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/grayscale",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#3498db",
"hex": "valor-ejemplo"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/grayscale", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#3498db","hex":"valor-ejemplo"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#3498db","hex":"valor-ejemplo"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/grayscale", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"color": "#3498db",
"hex": "valor-ejemplo"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.grayscale",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_channel | 255 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
الألوان غير الصالحة—إدخال فارغ، طول hex خاطئ، أحرف غير hex، قنوات خارج 0–255، أو مجموعة حقول ناقصة—تفشل بخطأ واضح invalid_input بدل اختراع عينة. المسار تحليل وحساب حتمي بحت—بلا شبكة، بلا بذور عشوائية، بلا ساعة جدارية—لذلك يعيد المشغّل المجاني في المتصفح وAPI المدفوعة مسبقًا نفس JSON في كل استدعاء.
كيف تستدعي API وماذا يعود
تُقص المسافات المحيطة، وقد تكون أحرف hex كبيرة أو صغيرة، والرمز # اختياري. أرسل جسم JSON بسلسلة لون أو ثلاثة حقول قناة منفصلة. يقبل حقل color الأسماء البديلة hex و value و text و input و code؛ أمثلة صالحة تشمل #3498db و 3498db و #abc و rgb(52, 152, 219) والقائمة العارية 52, 152, 219. بدلًا من ذلك قدّم r و g و b (بدائل red و green و blue) كأعداد صحيحة من 0 إلى 255. عند النجاح تعيد الاستجابة input_hex و input_rgb للمصدر المحلول، و gray عددًا صحيحًا مع بدائل gray_value و value، و gray_hex و hex كرمز محايد بست أرقام، و gray_rgb كمصفوفة من ثلاثة عناصر، و css كـ rgb(g, g, g)، و formula و weights لتوثيق المعاملات، و luminosity كمجموع موزون قبل التقريب بدقة عرض ثابتة، و message كملخص قصير، و steps كمصفوفة مرتبة لأسطر الاستبدال للتعليم أو التنقيح. فشل التحقق—لون وقنوات مفقودة، سلسلة فارغة، طول hex خاطئ، أحرف غير hex، بادئة برمجة 0x، قنوات خارج النطاق، أو قنوات كسرية غير صحيحة—يعيد invalid_input ولا يُحسب. التسعير مبلغ ثابت $0.002 لكل طلب ناجح بوحدة item وسعر وحدوي هامشي صفر.
نصائح عملية وحدود وبحوث ذات صلة
فضّل إرسال الرمز الدقيق الذي صدّرته أداة التصميم، بما فيه # إن وُجد؛ يعمل hex مع وبدون #، وتُطبّع الاستجابة المصدر دائمًا إلى input_hex بست أرقام صغيرة ليبقى فرق الإصدارات لاحقًا مستقرًا. المهام الفاشلة التي تعيد invalid_input لا تستهلك رصيدًا مدفوعًا مسبقًا، مما يبقي سكربتات الاستكشاف والتحقق من النماذج رخيصة أثناء لصق قيم غير مثالية من الحافظة.
أسئلة تقنية
ماذا يُعاد عند النجاح؟
قيمة gray الصحيحة (وأيضًا gray_value و value)، و gray_hex / hex، و gray_rgb، وسلسلة css بصيغة rgb()، والمصدر input_hex و input_rgb، و formula و weights و luminosity و message و steps.
ماذا يحدث عند قيمة لون غير صالحة؟
تعيد API قيمة invalid_input مع رسالة تصف المشكلة (إدخال فارغ، hex سيئ، قنوات خارج النطاق، وما إلى ذلك). فشل التحقق لا يُحسب.
هل محول اللون إلى رمادي مجاني؟
أداة المتصفح مجانية وتعمل محليًا. تستخدم استدعاءات API رصيد KIT المدفوع مسبقًا بمبلغ $0.002 لكل طلب ناجح؛ المهام الفاشلة لا تُحسب أبدًا.