যেহেতু আপনি উল্লেখ করেছেন যে আপনি একটি স্থির পটভূমি পেয়েছেন, তাই বলগুলির রঙ এখনও একটি এলোমেলো হতে পারে তবে তাদের নির্দিষ্ট রেঞ্জে পড়তে হবে যা এখনও পটভূমির প্রশংসা করে।
বুনিয়াদি। আমরা এটি করার আগে আপনাকে প্রাথমিক বিষয়গুলি জানতে হবে। নিম্নলিখিত রঙগুলি বিবেচনা করুন:
Black #000000 rgb(0,0,0)
Red #FF0000 rgb(255,0,0)
Green #00FF00 rgb(0,255,0)
Blue #0000FF rgb(0,0,255)
Yellow #FFFF00 rgb(255,255,0)
Cyan #00FFFF rgb(0,255,255)
Pink #FF00FF rgb(255,0,255)
Gray #C0C0C0 rgb(192,192,192)
White #FFFFFF rgb(255,255,255)
রঙগুলির মিশ্রণ আরজিবি [(0..255), (0..255), (0..255)] উপরের মতো নতুন রঙ তৈরি করে।
নেতিবাচক রঙের জন্য কম্পিউটিং নেতিবাচক রঙের জন্য কম্পিউটিং হ'ল সায়ানে লাল, বেগুনীতে সবুজ, হলুদে নীল trans
Red #FF0000 rgb(255,0,0) -> Cyan #00FFFF rgb(0,255,255)
Green #00FF00 rgb(0,255,0) -> Purple #FF00FF rgb(255,0,255)
Blue #0000FF rgb(0,0,255) -> Yellow #FFFF00 rgb(255,255,0)
পরিপূরক রঙ
পরিপূরক রঙগুলির কম্পিউটিং সম্পর্কিত রেফারেন্স অনুসারে: http://serennu.com/colour/rgbtohsl.php
এইচএসএল সম্পর্কে
এইচএসএল তাদের হিউ, স্যাচুরেশন এবং লাইটনেসের ক্ষেত্রে রঙ প্রকাশ করে, রঙের এই তিনটি বৈশিষ্ট্যের প্রত্যেকটির জন্য একটি নম্বর দেয়।
হিউ হ'ল রঙ চাকাতে রঙের অবস্থান, 0 ° থেকে 359 degrees ডিগ্রিতে প্রকাশিত হয়, যা চক্রের 360 represent প্রতিনিধিত্ব করে; 0 red লাল হচ্ছে, 180 red হচ্ছে লাল রঙের বিপরীত রঙের সায়ান এবং আরও।
স্যাচুরেশন হ'ল রঙের তীব্রতা, এটি কতটা নিস্তেজ বা উজ্জ্বল। কম স্যাচুরেশন, ডুলার (গ্রেয়ার) বর্ণটি দেখায়। এটি শতাংশ হিসাবে প্রকাশ করা হয়, 100% সম্পূর্ণ স্যাচুরেশন, সবচেয়ে উজ্জ্বল এবং 0% কোনও স্যাচুরেশন, ধূসর নয়।
হালকা হ'ল রঙ কত হালকা। স্যাচুরেশনের থেকে কিছুটা আলাদা। রঙে যত বেশি সাদা তার লাইটেন্সিটির মান তত বেশি, তত কম তার লাইটনেস। সুতরাং 100% লাইটনেস রঙ সাদা করে তোলে, 0% হালকা রঙ কালো করে তোলে, এবং "খাঁটি" বর্ণটি 50% হালকা হবে।
স্যাচুরেশন এবং লাইটেন্সিটির ব্যাখ্যা দেওয়ার চেয়ে পার্থক্যটি দেখতে এটি আরও সহজ। আপনি যদি স্পষ্ট করতে চান তবে রঙিন ক্যালকুলেটর পৃষ্ঠায় লাইটনেস এবং স্যাচুরেশনের বিভিন্নতা দেখার চেষ্টা করুন, আপনার স্টার্টার রঙ হিসাবে বেশ উজ্জ্বল রঙ বেছে নিন।
সুতরাং এইচএসএল স্বরলিপিটি এর মতো দেখাচ্ছে, হু, স্যাচুরেশন এবং লাইটনেস মানটিকে সেই ক্রমে প্রদান করছে: টি
লাল: 0 ° 100% 50% ফ্যাকাশে গোলাপী: 0 ° 100% 90% সায়ান: 180 ° 100% 50% এখানে পদক্ষেপ রয়েছে:
আপনার রঙকে এইচএসএলে রূপান্তর করুন।
হিউটির বিপরীতে হিউটির মানটি পরিবর্তন করুন (উদাঃ, যদি আপনার হিউ 50 is হয় তবে বিপরীতটি চাকাতে 230 at এ হবে - আরও 180 180)।
স্যাচুরেশন এবং লাইটেন্সি মানগুলি যেমন ছিল তেমন ত্যাগ করুন।
এই নতুন এইচএসএল মানটিকে আপনার মূল রঙ স্বরলিপিতে (আরজিবি বা যাই হোক না কেন) রূপান্তর করুন।
ইজিআরজিবি.কম এর মত সাইটগুলি আপনার জন্য আরজিবি থেকে এইচএসএল বা বিপরীতে জেনেরিক রূপান্তর করতে পারে।
প্রোগ্রামিং উদাহরণ হিসাবে পিএইচপি মধ্যে সম্পন্ন করা হয়েছে
আরজিবি থেকে এইচএসএল রূপান্তর
নীল # 0000FF আরজিবি (0,0,255) এর উপরে মানটি রেড হেক্সাডেসিমাল 00 + গ্রিন হেক্সাডেসিমেল 00 + নীল হেক্সাডেসিমেল এফএফ হিসাবে উপস্থাপন করা যেতে পারে
$redhex = substr($hexcode,0,2);
$greenhex = substr($hexcode,2,2);
$bluehex = substr($hexcode,4,2);
এটি রেড দশমিক 0 + সবুজ দশমিক 0 + নীল দশমিক 255 হিসাবে উপস্থাপিত হতে পারে
$var_r = (hexdec($redhex)) / 255;
$var_g = (hexdec($greenhex)) / 255;
$var_b = (hexdec($bluehex)) / 255;
এখন rgb2hsl রুটিনে এই মানগুলি প্লাগ করুন। নীচে আমার রূপান্তরটির জন্য ইজিআরজিবি.কম এর জেনেরিক কোডটির পিএইচপি সংস্করণটি রয়েছে:
ইনপুটটি $ var_r, $ var_g এবং $ var_b উপরের আউটপুট থেকে এইচএসএল সমান হয় $ h, and s এবং $ l - এগুলি আবার ইনপুট মানগুলির মতো 1 এর ভগ্নাংশ হিসাবে প্রকাশ করা হয়
$var_min = min($var_r,$var_g,$var_b);ttt
$var_max = max($var_r,$var_g,$var_b);
$del_max = $var_max - $var_min;
$l = ($var_max + $var_min) / 2;
if ($del_max == 0)
{
$h = 0;
$s = 0;
}
else
{
if ($l < 0.5)
{
$s = $del_max / ($var_max + $var_min);
}
else
{
$s = $del_max / (2 - $var_max - $var_min);
};
$del_r = ((($var_max - $var_r) / 6) + ($del_max / 2)) / $del_max;
$del_g = ((($var_max - $var_g) / 6) + ($del_max / 2)) / $del_max;
$del_b = ((($var_max - $var_b) / 6) + ($del_max / 2)) / $del_max;
if ($var_r == $var_max)
{
$h = $del_b - $del_g;
}
elseif ($var_g == $var_max)
{
$h = (1 / 3) + $del_r - $del_b;
}
elseif ($var_b == $var_max)
{
$h = (2 / 3) + $del_g - $del_r;
};
if ($h < 0)
{
$h += 1;
};
if ($h > 1)
{
$h -= 1;
};
};
সুতরাং এখন আমাদের এইচএসএল মান হিসাবে ভেরিয়েবল $ এইচ, $ এস এবং $ l এ রঙ রয়েছে। এই তিনটি আউটপুট ভেরিয়েবলগুলি ডিগ্রি এবং শতাংশের পরিবর্তে এই পর্যায়ে আবার 1 এর ভগ্নাংশ হিসাবে ধরা হয়। সুতরাং, সায়ান (180 ° 100% 50%) $ h = 0.5, 0.5 s = 1 এবং $ l = 0.5 হিসাবে প্রকাশিত হবে।
এরপরে হিউ এর বিপরীতে মানটি নির্ণয় করুন, অর্থাৎ ১৮০ ডিগ্রি বা ০.০ এর দূরে (আমি নিশ্চিত যে গণিতবিদরা এগুলিকে আঁকানোর আরও সুন্দর পদ্ধতিতে রয়েছে তবে):
বিপরীত হিউ গণনা করুন, $ এইচ 2
$h2 = $h + 0.5;
if ($h2 > 1)
{
$h2 -= 1;
};
পরিপূরক রঙের এইচএসএল মান এখন $ h2, $ s, $ l এ। সুতরাং আমরা এটিকে আরজিবিতে রূপান্তর করতে প্রস্তুত (আবার, EasyRGB.com সূত্রের আমার পিএইচপি সংস্করণ)। নোট করুন এবং আউটপুট ফর্ম্যাটগুলি এবার আলাদা আলাদা করে দেখুন, কোডের শীর্ষে আমার মন্তব্য দেখুন:
ইনপুটটি পরিপূরক রঙের এইচএসএল মান, 1 আউটপুট এর ভগ্নাংশ হিসাবে $ h2, $ s, $ l এ আটকানো হয় সাধারণ 255 255 255 ফর্ম্যাটে আরজিবি, $ r, $ g, $ b এ হিউ ফাংশন ব্যবহার করে hue_2_rgb ব্যবহার করে রূপান্তরিত হয় এই কোড শেষে
if ($s == 0)
{
$r = $l * 255;
$g = $l * 255;
$b = $l * 255;
}
else
{
if ($l < 0.5)
{
$var_2 = $l * (1 + $s);
}
elset
{
$var_2 = ($l + $s) - ($s * $l);
};
$var_1 = 2 * $l - $var_2;
$r = 255 * hue_2_rgb($var_1,$var_2,$h2 + (1 / 3));
$g = 255 * hue_2_rgb($var_1,$var_2,$h2);
$b = 255 * hue_2_rgb($var_1,$var_2,$h2 - (1 / 3));
};
// Function to convert hue to RGB, called from above
function hue_2_rgb($v1,$v2,$vh)
{
if ($vh < 0)
{
$vh += 1;
};
if ($vh > 1)
{
$vh -= 1;
};
if ((6 * $vh) < 1)
{
return ($v1 + ($v2 - $v1) * 6 * $vh);
};
if ((2 * $vh) < 1)
{
return ($v2);
};
if ((3 * $vh) < 2)
{
return ($v1 + ($v2 - $v1) * ((2 / 3 - $vh) * 6));
};
return ($v1);
};
এবং সেই রুটিনের পরে অবশেষে আমাদের 255 255 255 (আরজিবি) ফর্ম্যাটে $ r, $ g এবং $ b রয়েছে, যা আমরা ছয় অঙ্কের হেক্সে রূপান্তর করতে পারি:
$rhex = sprintf("%02X",round($r));
$ghex = sprintf("%02X",round($g));
$bhex = sprintf("%02X",round($b));
$rgbhex = $rhex.$ghex.$bhex;
g rgbhex হ'ল আমাদের উত্তর - হেক্সের পরিপূরক রঙ।
যেহেতু আপনার রঙের পটভূমি নীল বা 0,0,255 এইচএসএল
হিউ (এইচ): 240 ডিগ্রি / স্যাচুরেশন (এস): 100% / হালকা (এল): 4.9%
240 এর বিপরীতে একটি বৃত্তের 60 হয় তারপরে আরজিবিতে রূপান্তর করুন # 181800 এর মান দেয়