public void ToRgb() { foreach (HtmlColorSample sample in HtmlColorSamples.All) { double c = sample.Cmy.Cyan; double m = sample.Cmy.Magenta; double y = sample.Cmy.Yellow; CmyColor cmy = new CmyColor(c, m, y); int r1 = sample.Rgb.Red; int g1 = sample.Rgb.Green; int b1 = sample.Rgb.Blue; ColorUtils.CmyToRgb(c, m, y, out byte r2, out byte g2, out byte b2); Assert.AreEqual(r1.ToString("N8"), r2.ToString("N8"), "#1 Red (" + sample.Name + ")"); Assert.AreEqual(g1.ToString("N8"), g2.ToString("N8"), "#1 Green (" + sample.Name + ")"); Assert.AreEqual(b1.ToString("N8"), b2.ToString("N8"), "#1 Blue (" + sample.Name + ")"); RgbColor rgb1 = ColorUtils.CmyToRgb(c, m, y); Assert.AreEqual(r1.ToString("N8"), rgb1.Red.ToString("N8"), "#2 Red (" + sample.Name + ")"); Assert.AreEqual(g1.ToString("N8"), rgb1.Green.ToString("N8"), "#2 Green (" + sample.Name + ")"); Assert.AreEqual(b1.ToString("N8"), rgb1.Blue.ToString("N8"), "#2 Blue (" + sample.Name + ")"); RgbColor rgb2 = ColorUtils.CmyToRgb(cmy); Assert.AreEqual(r1.ToString("N8"), rgb2.Red.ToString("N8"), "#3 Red (" + sample.Name + ")"); Assert.AreEqual(g1.ToString("N8"), rgb2.Green.ToString("N8"), "#3 Green (" + sample.Name + ")"); Assert.AreEqual(b1.ToString("N8"), rgb2.Blue.ToString("N8"), "#3 Blue (" + sample.Name + ")"); RgbColor rgb3 = cmy.ToRgb(); Assert.AreEqual(r1.ToString("N8"), rgb3.Red.ToString("N8"), "#3 Red (" + sample.Name + ")"); Assert.AreEqual(g1.ToString("N8"), rgb3.Green.ToString("N8"), "#3 Green (" + sample.Name + ")"); Assert.AreEqual(b1.ToString("N8"), rgb3.Blue.ToString("N8"), "#3 Blue (" + sample.Name + ")"); } }
public void CmyTo() { CmyColor cmy = new CmyColor(0.05882352941176472, 0.027450980392156876, 0, 0.5); Assert.AreEqual(0.5, cmy.ToCmy().Alpha, "To CMY"); Assert.AreEqual(0.5, cmy.ToCmyk().Alpha, "To CMYK"); Assert.AreEqual(0.5, cmy.ToHsl().Alpha, "To HSL"); Assert.AreEqual(0.5, cmy.ToHsv().Alpha, "To HSV"); Assert.AreEqual(0.5, cmy.ToRgb().Alpha, "To RGB"); }