示例#1
0
        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 + ")");
            }
        }
示例#2
0
        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");
        }