أنشئ لوحة ألوان متناظرة من أي لون سداسي عشري
أنشئ لوحة ألوان متناظرة قابلة للتكرار انطلاقاً من لون سداسي عشري والعدد الدقيق للعينات المطلوبة.
شغّل الأداة مجانًا
يحول المولد اللون الأساسي إلى HSL، ويوزع الألوان بالتساوي داخل نطاق عرضه ستون درجة ومركزه درجة اللون الأصلية، ثم يعيد كل نتيجة بصيغة سداسية عشرية موحدة. يعيد طلب اللون الواحد درجة اللون الأساسية، بينما تشمل اللوحات الأكبر حدي الثلاثين درجة. يناسب الحساب الحتمي رموز التصميم والرسوم البيانية والرسوم التوضيحية ومسارات البناء المتكررة من دون عشوائية أو اتصال بالشبكة.
اختر اللون الأساسي وحجم اللوحة
ابدأ بلون CSS سداسي عشري يتكون من ثلاثة أرقام أو ستة، مع إمكان وضع علامة الشباك في البداية أو حذفها. توسع الصيغة المختصرة قبل التحويل، ولذلك يمثل #36c و#3366cc اللون الأساسي نفسه ويعطيان النتيجة الموحدة نفسها. اختر بعد ذلك count، وهو العدد الدقيق للعينات المعادة. يجب أن يكون عدداً صحيحاً لا يقل عن واحد؛ وترفض القيمة صفر والقيم السالبة لأنها لا تصف لوحة. عندما تساوي count واحداً، يعيد المولد درجة اللون الأساسية من دون إزاحة. وعندما تساوي اثنين، يعيد الحدين عند -30 و30 درجة. ومع ثلاثة ألوان تقع القاعدة بين الحدين. تضيف الأعداد الأكبر فواصل متساوية ضمن النطاق نفسه ولا توسع الانسجام. تبقى درجة التشبع والإضاءة مساويتين للون الأساسي، فلا يتغير إلا اللون. تتضمن الاستجابة اللون الأساسي الموحد والعدد المطلوب، ثم تصف كل عينة بفهرس يبدأ من الصفر وإزاحة ذات إشارة وزاوية ملتفة على دائرة اللون وقيمة سداسية عشرية من ست خانات بأحرف صغيرة. يمكن استخدام الفهرس لأسماء الرموز الثابتة والإزاحة لتوثيق علاقة كل لون بالمصدر.
افهم التوزيع المتساوي على دائرة الألوان
تشغل الألوان المتناظرة مواقع متجاورة على دائرة اللون. تستخدم هذه القدرة نطاقاً ثابتاً يبدأ من ثلاثين درجة تحت درجة اللون الأساسية وينتهي عند ثلاثين درجة فوقها، أي بعرض إجمالي قدره ستون درجة. لكل count أكبر من واحد، تحسب المسافة بقسمة هذا العرض على count ناقص واحد. تستخدم خمسة ألوان الإزاحات -30 و-15 و0 و15 و30 درجة، بينما تستخدم أربعة ألوان -30 و-10 و10 و30. ولأن اللون دائري، فإن الإزاحة التي تتجاوز الصفر تلتف إلى جوار ثلاثمئة وستين بدلاً من أن تصبح زاوية سالبة غير صالحة. يقرأ البرنامج قنوات RGB أولاً، ويحولها إلى HSL، ويطبق كل إزاحة، ثم يعيد النتيجة إلى RGB صحيح وصيغة سداسية عشرية. يضمن التقريب الحتمي أن ينتج الإدخال نفسه JSON مطابقاً في كل مرة. الألوان المحايدة صالحة أيضاً؛ فالرمادي ذو تشبع صفري، ولذلك لا يغير تعديل درجته الرياضية قيم RGB المرئية وقد تظهر قيم سداسية عشرية مكررة عند زوايا مختلفة.
استخدم اللوحة في مسارات الإنتاج
استخدم المصفوفة المولدة عندما تكون عائلة ألوان مترابطة وقابلة للتكرار أهم من التباين الحاد. يستطيع نظام التصميم ربط الفهارس بخصائص مثل accent-1 حتى accent-5 وإعادة توليدها عند تغيير لون العلامة الأساسي. ويمكن لأداة الرسوم البيانية طلب عدد يطابق سلاسل التقرير ثم تعيين العينات حسب ترتيب المصفوفة للحفاظ على الانسجام. كما تستطيع أداة الرسم تحويل بذرة اختيرت فنياً إلى ألوان مضبوطة للتعبئة والتفاصيل، على أن تجرى تعديلات الإضاءة اللازمة للظلال بصورة منفصلة. تلائم النتيجة اختبارات اللقطات أيضاً لأنها لا تحتوي على عشوائية أو تاريخ أو استجابة شبكة أو اختلاف نموذج. احتفظ باللون الأساسي وcount بوصفهما مصدر الحقيقة بدلاً من نسخ عينات منفصلة إلى مستودعات متعددة. قبل استعمال أي لون للنص أو الأيقونات أو عناصر التحكم، افحص تباينه مع الخلفية الفعلية؛ فالانسجام المتناظر لا يضمن التوافق مع WCAG. تبلغ كلفة كل عنصر API ناجح $0.002. تحقق من count في الواجهة واعرض رسالة الخطأ إذا كان أقل من واحد أو لم يكن عدداً صحيحاً.
حالات الاستخدام
إنشاء رموز إبراز لنظام التصميم
حوّل لون علامة تجارية معتمداً إلى عدد دقيق من درجات الألوان المجاورة والثابتة للمكونات والسمات.
تلوين سلاسل الرسوم المترابطة
طابق العدد مع سلاسل البيانات وعيّن الألوان المتساوية وفق الترتيب الحتمي للمصفوفة.
بناء عائلات لونية للرسوم التوضيحية
استخرج ألوان تعبئة وتفاصيل منسجمة من بذرة فنية من دون اختيار عشوائي أو حساب يدوي للدرجات.
الأسئلة الشائعة
ماذا يحدث عندما تساوي count واحداً؟
يعاد لون واحد يستخدم درجة اللون الأساسية بإزاحة قدرها صفر درجة.
هل يشمل الناتج حدي النطاق؟
نعم. عندما يزيد العدد على واحد، يكون اللون الأول عند -30 درجة والأخير عند 30 درجة.
ما صيغ الألوان المقبولة؟
تقبل ألوان CSS السداسية العشرية ذات الثلاث خانات أو الست، مع علامة الشباك الأولية أو من دونها.
لماذا قد ينتج الرمادي قيماً مكررة؟
تشبع الرمادي يساوي صفراً، لذلك لا يغير تعديل اللون الرياضي قنوات RGB المرئية.
ما كلفة طلب API؟
تبلغ كلفة كل عنصر تمت معالجته بنجاح $0.002. أداة المتصفح متاحة للاستخدام التفاعلي.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/color/analogous-palette \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#3366cc","count":5}'const res = await fetch("https://api.kit.forhosting.com/color/analogous-palette", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#3366cc",
"count": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/analogous-palette",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#3366cc",
"count": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/analogous-palette", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#3366cc","count":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#3366cc","count":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/analogous-palette", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"color": "#3366cc",
"count": 5
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.analogous_palette",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |