นี้เรียกว่าการแก้ไขสี มันเป็นสิ่งที่ไล่ระดับสีทำภายใต้ประทุน คุณสามารถทำได้โดยใช้วิธีการและวิธีการที่หลากหลายและวิธีการแก้ไขผลลัพธ์นั้นขึ้นอยู่กับวิธีการนั้น ๆ
ฉันมักจะทำสิ่งนี้สำหรับโครงการเว็บโดยใช้ JavaScript เพื่อให้ฉันสามารถเปลี่ยนสีแบบไดนามิกเช่นในVisualizer เพลงนี้ การใช้งาน JavaScript ที่มีวิธีการแก้ไขเชิงเส้นตรงไปตรงมามากโดยใช้ RGB ซึ่งดึงมาจากตัวอย่างด้านบนมีดังนี้:
// Returns a single rgb color interpolation between given rgb color
// based on the factor given; via https://codepen.io/njmcode/pen/axoyD?editors=0010
function interpolateColor(color1, color2, factor) {
if (arguments.length < 3) {
factor = 0.5;
}
var result = color1.slice();
for (var i = 0; i < 3; i++) {
result[i] = Math.round(result[i] + factor * (color2[i] - color1[i]));
}
return result;
};
// My function to interpolate between two colors completely, returning an array
function interpolateColors(color1, color2, steps) {
var stepFactor = 1 / (steps - 1),
interpolatedColorArray = [];
color1 = color1.match(/\d+/g).map(Number);
color2 = color2.match(/\d+/g).map(Number);
for(var i = 0; i < steps; i++) {
interpolatedColorArray.push(interpolateColor(color1, color2, stepFactor * i));
}
return interpolatedColorArray;
}
ซึ่งถูกใช้เช่นนั้นและส่งคืนอาร์เรย์ของสีที่ถูกแทรก:
var colorArray = interpolateColors("rgb(94, 79, 162)", "rgb(247, 148, 89)", 5);
นอกจากนี้คุณยังสามารถค้นหาส่วนขยาย PhotoShop (และโปรแกรมอื่น ๆ ที่น่าจะเป็น) สำหรับการแก้ไขสี อย่างไรก็ตามคุณอาจต้องการตรวจสอบเพื่อให้แน่ใจว่าวิธีการแก้ไขนั้นเป็นวิธีเดียวกับที่คุณต้องการเนื่องจากคุณสามารถใช้ฟังก์ชันใดก็ได้เพื่อแก้ไขตาม