解决FlashHex色彩Bug的方法

2008-04-02 10:47:13来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  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 全部选择 然后拷贝]

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 制作可拖动的菜单

下一篇: 关于帧频