手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网页制作>Flash>列表

解决FlashHex色彩Bug的方法

来源:互联网 作者:west263.com 时间:2008-04-02
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

  Flash在转换16进制色彩时有一个Bug,当某一颜色值为00时,Flash自动取00的值为0,他计算实值,认为是空。这样类似于#00FFCC得色值会被转换为#FFCC。

  Quester为此写了一个函数进行补位计算,希望对碰到此问题的朋友有些帮助。

  function RGB2HEX (R, G, B) {

  // 补位操作

  RR = R.toString(16).toUpperCase();

  if (length(RR)<2) {

  RR = "0" add RR;

  }

  GG = G.toString(16).toUpperCase();

  if (length(GG)<2) {

  GG = "0" add GG;

  }

  BB = B.toString(16).toUpperCase();

  if (length(BB)<2) {

  BB = "0" add BB;

  }

  // 用于网页 的 Hex 值

  Hex = "#" add RR add GG add BB;

  return Hex;

  }

  代码拷贝框

  

  [Ctrl A 全部选择 然后拷贝]

  下面是秋水精减后的代码:

  function RGB2HEX (R, G, B) {

  // 补位操作

  RR = (256 R).toString(16).toUpperCase().substr(1);

  GG = (256 G).toString(16).toUpperCase().substr(1);

  BB = (256 B).toString(16).toUpperCase().substr(1);

  // 用于网页 的 Hex 值

  Hex = "#" add RR add GG add BB;

  return Hex;

  }

  代码拷贝框

  

  [Ctrl A 全部选择 然后拷贝]

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!