Example #1
0
 public void CopyFrom(ColorModel source)
 {
     this.color          = source.color;
     this.rgbColor       = source.rgbColor;
     this.hsbColor       = source.hsbColor;
     this.hlsColor       = source.hlsColor;
     this.cmykColor      = source.cmykColor;
     this.isAlphaEnabled = source.isAlphaEnabled;
     this.OnColorChanged();
 }
Example #2
0
 public static void CmykToRgb(CmykColor cmykColor, ref RgbColor rgbColor)
 {
     cmykColor.Cyan    = Math.Min(1f, Math.Max(0.0f, cmykColor.Cyan));
     cmykColor.Magenta = Math.Min(1f, Math.Max(0.0f, cmykColor.Magenta));
     cmykColor.Yellow  = Math.Min(1f, Math.Max(0.0f, cmykColor.Yellow));
     cmykColor.Black   = Math.Min(1f, Math.Max(0.0f, cmykColor.Black));
     rgbColor.Red      = (float)(1.0 - (double)cmykColor.Cyan * (1.0 - (double)cmykColor.Black)) - cmykColor.Black;
     rgbColor.Green    = (float)(1.0 - (double)cmykColor.Magenta * (1.0 - (double)cmykColor.Black)) - cmykColor.Black;
     rgbColor.Blue     = (float)(1.0 - (double)cmykColor.Yellow * (1.0 - (double)cmykColor.Black)) - cmykColor.Black;
     rgbColor.Red      = Math.Min(1f, Math.Max(0.0f, rgbColor.Red));
     rgbColor.Green    = Math.Min(1f, Math.Max(0.0f, rgbColor.Green));
     rgbColor.Blue     = Math.Min(1f, Math.Max(0.0f, rgbColor.Blue));
 }
Example #3
0
 public static void RgbToCmyk(RgbColor rgbColor, ref CmykColor cmykColor)
 {
     rgbColor.Red      = Math.Min(1f, Math.Max(0.0f, rgbColor.Red));
     rgbColor.Green    = Math.Min(1f, Math.Max(0.0f, rgbColor.Green));
     rgbColor.Blue     = Math.Min(1f, Math.Max(0.0f, rgbColor.Blue));
     cmykColor.Cyan    = 1f - rgbColor.Red;
     cmykColor.Magenta = 1f - rgbColor.Green;
     cmykColor.Yellow  = 1f - rgbColor.Blue;
     cmykColor.Black   = Math.Min(cmykColor.Cyan, Math.Min(cmykColor.Magenta, cmykColor.Yellow));
     if ((double)cmykColor.Black == 1.0)
     {
         cmykColor.Cyan = cmykColor.Magenta = cmykColor.Yellow = 0.0f;
     }
     else
     {
         cmykColor.Cyan    = (float)(((double)cmykColor.Cyan - (double)cmykColor.Black) / (1.0 - (double)cmykColor.Black));
         cmykColor.Magenta = (float)(((double)cmykColor.Magenta - (double)cmykColor.Black) / (1.0 - (double)cmykColor.Black));
         cmykColor.Yellow  = (float)(((double)cmykColor.Yellow - (double)cmykColor.Black) / (1.0 - (double)cmykColor.Black));
     }
     cmykColor.Cyan    = Math.Min(1f, Math.Max(0.0f, cmykColor.Cyan));
     cmykColor.Magenta = Math.Min(1f, Math.Max(0.0f, cmykColor.Magenta));
     cmykColor.Yellow  = Math.Min(1f, Math.Max(0.0f, cmykColor.Yellow));
     cmykColor.Black   = Math.Min(1f, Math.Max(0.0f, cmykColor.Black));
 }