如何获取RGB值的十六进制颜色值

如何获取RGB值的十六进制颜色值

给定RGB颜色值,任务是使用JavaScript获取该颜色的十六进制代码。

方法1:

  • 调用convert()自定义函数,并使用RGB值作为参数。
  • 使用 match()方法 选择红色、绿色和蓝色的值。RGB的值以数组形式存储。
  • 调用hexCode()函数将RGB的值转换为十六进制代码。
  • slice()方法 获取字符串的片段,并将提取的部分返回为新的字符串。 toString()方法 将数字转换为字符串。

示例1: 此示例获取白色的RGB值,即rgb(255,255,255),并使用JavaScript将其转换为十六进制代码。

<h1 style="color:green;"> 
    GeeksforGeeks 
</h1> 
  
<p id="GFG_UP"> 
</p> 
  
<button onClick="GFG_Fun()"> 
    click here 
</button> 
  
<p id="GFG_DOWN"> 
</p> 
  
<script> 
    var up = document.getElementById('GFG_UP'); 
    var down = document.getElementById('GFG_DOWN'); 
    up.innerHTML = 'Click on button to hex code of the color'; 
      
    function convert(rgb) { 
        rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/); 
      
        function hexCode(i) { 
            return ("0" + parseInt(i).toString(16)).slice(-2); 
        } 
        return "#" + hexCode(rgb[1]) + hexCode(rgb[2]) 
                + hexCode(rgb[3]); 
    } 
      
    function GFG_Fun() { 
        down.innerHTML = "Hex Code of 'white' = " 
            + convert('rgb(255,255,255)'); 
    } 
</script>

输出:

如何获取RGB值的十六进制颜色值

示例2: 这个方法首先检查是否提供了十六进制值而不是RGB值。因为一些浏览器会返回十六进制值而不是RGB值。这个示例获取绿色的RGB值为RGB(0,128,0),然后通过创建一个函数将其转换为HexCode。

<h1 style="color:green;"> 
    GeeksforGeeks 
</h1> 
  
<p id="GFG_UP"> 
</p> 
  
<button onClick="GFG_Fun()"> 
    click here 
</button> 
  
<p id="GFG_DOWN"></p> 
  
<script> 
    var up = document.getElementById('GFG_UP'); 
    var down = document.getElementById('GFG_DOWN'); 
    up.innerHTML = 'Click on button to hex code of the color'; 
      
    function convert(rgb) { 
        if (/^#[0-9A-F]{6}/i.test(rgb)) return rgb; 
      
        rgb = rgb.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)/); 
      
        function hexCode(i) { 
            return ("0" + parseInt(i).toString(16)).slice(-2); 
        } 
        return "#" + hexCode(rgb[1]) + hexCode(rgb[2]) 
                + hexCode(rgb[3]); 
    } 
      
    function GFG_Fun() { 
        down.innerHTML = "Hex Code of 'Green' = " 
                + convert('rgb(0,128,0)'); 
    } 
</script>

输出:

如何获取RGB值的十六进制颜色值

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程