zoukankan      html  css  js  c++  java
  • JavaScript随机生成颜色以及十六进制颜色 与RGB颜色值的相互转换


    /** * 随机生成颜色 * @return 随机生成的十六进制颜色 */ function randomColor(){   var colorStr=Math.floor(Math.random()*0xFFFFFF).toString(16).toUpperCase();   return"#"+"000000".substring(0,6-colorStr)+colorStr; }

      

    /**
     * 十六进制颜色转换为RGB颜色
     * @param color 要转换的十六进制颜色
     * @return RGB颜色
    */
    function colorHexToRGB(color){
      color=color.toUpperCase();
      var regexpHex=/^#[0-9a-fA-F]{3,6}$/;//Hex
      if(regexpHex.test(color)){
        var hexArray=new Array();
        var count=1;
        for(var i=1;i<=3;i++){
          if(color.length-2*i>3-i){
            hexArray.push(Number("0x"+color.substring(count,count+2)));
            count+=2;
          }else{
            hexArray.push(Number("0x"+color.charAt(count)+color.charAt(count)));
            count+=1;
          }
        }
        return"RGB("+hexArray.join(",")+")";
      }else{
        return color;
      }
    }
    

      

    /**
     * RGB颜色转换为十六进制颜色
     * @param color 要转换的RGB颜色
     * @return 十六进制颜色
    */
     
    function colorRGBToHex(color){
      var regexpRGB=/^(rgb|RGB)([0-9]{1,3},s?[0-9]{1,3},s?[0-9]{1,3})$/;//RGB
      if(regexpRGB.test(color)){
        color=color.replace(/((|)|rgb|RGB)*/g,"").split(",");
        var colorHex="#";
        for(var i=0;i<color.length;i++){
          var hex=Number(color[i]).toString(16);
          if(hex.length==1) hex="0"+hex;
          colorHex+=hex;
        }
        return colorHex;
      }else{
        return color;
      }
    }
    

      

  • 相关阅读:
    ArcGIS Engine 常用方法(转)
    正则表达式 C#System.Text.RegularExpressions.Regex
    ae中栅格数据转为矢量数据 (转)
    ArcEngine 渲染的使用 (转)
    C#字符串分割成数组,中间多空格
    <C++ GUI Programming with Qt4 ,Second Edition> 学习笔记
    perl module and its package
    static_cast reinterpret_cast
    阅读<inside the c++ object modle > 有感
    C++ virtual table
  • 原文地址:https://www.cnblogs.com/ecmasea/p/9542699.html
Copyright © 2011-2022 走看看