PHP RGB颜色和十六进制颜色互转

原创 2015年07月08日 17:02:39
/**
     * RGB转 十六进制
     * @param $rgb RGB颜色的字符串 如:rgb(255,255,255);
     * @return string 十六进制颜色值 如:#FFFFFF
     */
    function RGBToHex($rgb){
        $regexp = "/^rgb\(([0-9]{0,3})\,\s*([0-9]{0,3})\,\s*([0-9]{0,3})\)/";
        $re = preg_match($regexp, $rgb, $match);
        $re = array_shift($match);
        $hexColor = "#";
        $hex = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F');
        for ($i = 0; $i < 3; $i++) {
            $r = null;
            $c = $match[$i];
            $hexAr = array();
            while ($c > 16) {
                $r = $c % 16;
                $c = ($c / 16) >> 0;
                array_push($hexAr, $hex[$r]);
            }
            array_push($hexAr, $hex[$c]);
            $ret = array_reverse($hexAr);
            $item = implode('', $ret);
            $item = str_pad($item, 2, '0', STR_PAD_LEFT);
            $hexColor .= $item;
        }
        return $hexColor;
    }
    /**
     * 十六进制 转 RGB
     */
    function hex2rgb($hexColor) {
        $color = str_replace('#', '', $hexColor);
        if (strlen($color) > 3) {
            $rgb = array(
                'r' => hexdec(substr($color, 0, 2)),
                'g' => hexdec(substr($color, 2, 2)),
                'b' => hexdec(substr($color, 4, 2))
            );
        } else {
            $color = $hexColor;
            $r = substr($color, 0, 1) . substr($color, 0, 1);
            $g = substr($color, 1, 1) . substr($color, 1, 1);
            $b = substr($color, 2, 1) . substr($color, 2, 1);
            $rgb = array(
                'r' => hexdec($r),
                'g' => hexdec($g),
                'b' => hexdec($b)
            );
        }
        return $rgb;
    }
版权声明:本文为博主原创文章,未经博主允许不得转载。

16进制颜色代码转RGB代码

border=0 cellSpacing=0 cellPadding=0 height="376">       width=318>   ali...

关于RGB的转换为十六进制的问题

今天在做项目中,遇到一处,颜色值使用的是十六进制的,但是我获取到的颜色值是rgb的。所以需要进行转换一下,在网上找到了几个不错的方法,今天写下来,当做一次小记录吧。 首先是我们的思路是这样的,rgb...

微信小程序例子——使用form表单获取输入框数据

微信小程序例子——使用form表单获取输入框数据

javascript 十六进制与RGB颜色值的相互转换

1.加载js方法 //十六进制颜色值域RGB格式颜色值之间的相互转换 //------------------------------------- //十六进制颜色值的正则表达式 var...

RGB颜色转换16进制

网页中表示颜色的常见方法有: 1.Color Name(颜色名称) 用颜色名称来指定颜色,这种方法简洁直观,一看就知道是什么颜色,但最大的缺点是颜色的名称太少,不能有效的表示一些较丰富的颜色 2....

RGB颜色与16进制颜色的换算方法

网页中表示颜色的常见方法有: 1.Color Name(颜色名称) 用颜色名称来指定颜色,这种方法简洁直观,一看就知道是什么颜色,但最大的缺点是颜色的名称太少,不能有效的表示一些较丰富的颜色 2....

iOS开发:RGB专栏(RGB与16进制色互转)

iOS开发中,除了使用固定的基本颜色之外,常常也需要使用自定义的颜色,那么这就涉及到了RGB的色值使用问题。     一、对RGB的色值使用的时候,可将对颜色的设置定义成宏(设置宏定义),方便开发使用...
  • CC1991_
  • CC1991_
  • 2017年06月01日 11:21
  • 1034

PHP读取单一图片的rgb值

我们知道用PHP去设置一块画布的颜色很容易,它提供了image系列的函数可以做这个事情,但是有一个图片文件,假设他上面的颜色是单一的,如何读取它的rgb值呢? 尝试如下,但是并不是很准,跟QQ截图的读...

PHP.7-HTML+CSS(一)-HTML语法、常用字符实体、颜色代码

HTML+CSS HTML是WEB页面的描述性语言,浏览器解释的语言 CSS则是为HTML制定样式的机制,为浏览器解释的语言。它不能独立使用,没有HTML就没有CSS,定义网页的外观和...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP RGB颜色和十六进制颜色互转
举报原因:
原因补充:

(最多只允许输入30个字)