十六进制颜色值转换成十进制RGB颜色值

create or replace function njutec_toexgehextointcolor(strcolor in varchar2) return varchar2 is
  Result varchar2(4000);
  str1 varchar2(200);
  str2 varchar2(200);
  str3 varchar2(200);
begin
  Result:='';
  str1:='';
  str2:='';
  str3:='';
  if (strcolor is null) then
      select to_number(substr('#f1f4f5',2,2),'xx') into str1 from dual;
      select to_number(substr('#f1f4f5',4,2),'xx') into str2 from dual;
      select to_number(substr('#f1f4f5',6,2),'xx') into str3 from dual;
      Result:='RGB('||str1||','||str2||','||str3||')';
  else
     select to_number(substr(strcolor,2,2),'xx') into str1 from dual;
     select to_number(substr(strcolor,4,2),'xx') into str2 from dual;
     select to_number(substr(strcolor,6,2),'xx') into str3 from dual;
     Result:='RGB('||str1||','||str2||','||str3||')';
  end if;
  return Result;
end njutec_toexgehextointcolor;


 

 

猜你喜欢

转载自tom-tomcat.iteye.com/blog/2119594