[ Index ]
 

Code source de eGroupWare 1.2.106-2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/phpgwapi/js/dynapi/ext/ -> functions.color.js (source)

   1  /*
   2      DynAPI Distribution
   3      dynapi.functions.Color extension    
   4  */
   5  
   6  var f = dynapi.functions;
   7  f.Color = Color = {}; // used by dynapi.library
   8  
   9  // Color Functions ---------------------------
  10  
  11  f.DecToHex = function(val){
  12      lo=val%16;
  13      val-=lo;
  14      lo+=48;
  15      if (lo>57) lo+=7;
  16      hi=val/16;
  17      hi+=48;
  18      if (hi>57) hi+=7;
  19      return String.fromCharCode(hi,lo);
  20  };
  21  f.getColor = function(r,g,b) { 
  22      return '#'+dynapi.functions.DecToHex(r)+dynapi.functions.DecToHex(g)+dynapi.functions.DecToHex(b);
  23  };
  24  f.getRandomColor = function() {
  25      var s = '';
  26      for (var i=0;i<3;i++) s += dynapi.functions.DecToHex(Math.floor(255*Math.random()));
  27      return s;
  28  };
  29  f.createRedPal = function(pal) {
  30      var r=g=b=0;
  31      for (var i=0; i<256; i++){
  32          pal[i]=dynapi.functions.getColor(r,g,b);
  33          r+=8;
  34          if (r>255) { r=255; g+=6; b+=2; }
  35          if (g>255) { g=255; b+=2; }
  36          if (b>255) { b=255; }
  37      }
  38  };
  39  f.createGrayPal = function(pal) {
  40      var r=0;
  41      for (var i=0; i<256; i++){
  42          pal[i]=dynapi.functions.getColor(r,r,r);
  43          r+=4;
  44          if (r>255) { r=255; }
  45      }
  46  };
  47  f.createBluePal = function(pal){
  48      var r=g=b=0;
  49      for (var i=0; i<256; i++){
  50          pal[i]=dynapi.functions.getColor(r,g,b);
  51          b+=6;
  52          if (b>255) { b=255; g+=2; }
  53          if (g>255) { g=255; r+=2; }
  54      }
  55  };
  56  f.createGreenPal = function(pal) {
  57      var r=g=b=0;
  58      for (var i=0; i<256; i++){
  59          pal[i]=dynapi.functions.getColor(r,g,b);
  60          g+=6;
  61          if (g>255) { g=255; b+=2; }
  62          if (b>255) { b=255; r+=2; }
  63      }
  64  };
  65  f.fadeColor = function(from, to, percent){
  66      if(!from || !to) return;
  67      if(percent<0) return from;
  68      else if(percent>100) to;
  69      
  70      if(from.substring(0,1)!='#') from='#'+from;
  71      if(to.substring(0,1)!='#') to='#'+to;
  72  
  73      from = {
  74          red:parseInt(from.substring(1,3),16),
  75          green:parseInt(from.substring(3,5),16),
  76          blue:parseInt(from.substring(5,7),16)
  77      }
  78  
  79      to = {
  80          red:parseInt(to.substring(1,3),16),
  81          green:parseInt(to.substring(3,5),16),
  82          blue:parseInt(to.substring(5,7),16)
  83      }
  84  
  85      var r=from.red+Math.round((percent/100)*(to.red-from.red));
  86      var g=from.green+Math.round((percent/100)*(to.green-from.green));
  87      var b=from.blue+Math.round((percent/100)*(to.blue-from.blue));
  88  
  89      r = (r < 16 ? '0' : '') + r.toString(16);
  90      g = (g < 16 ? '0' : '') + g.toString(16);
  91      b = (b < 16 ? '0' : '') + b.toString(16);
  92  
  93      return '#' + r + g + b;
  94  };


Généré le : Sun Feb 25 17:20:01 2007 par Balluche grâce à PHPXref 0.7