public void IndexerOutOfRangeAbove() { var colorTable = new SKColorTable(Colors); Assert.Throws <ArgumentOutOfRangeException>(() => { var color = colorTable[250]; }); }
public void CreateIndex8Bitmap() { var info = new SKImageInfo(320, 240, SKColorType.Index8, SKAlphaType.Opaque); var ct = new SKColorTable(Colors); var bitmap = new SKBitmap(info, ct); Assert.IsNotNull(bitmap); Assert.AreEqual(ct, bitmap.ColorTable); }
public void MembersRetrieveColors() { var colorTable = new SKColorTable(Colors); Assert.Equal(Colors.Length, colorTable.Count); Assert.Equal(Colors, colorTable.Colors); Assert.Equal(Colors[0], colorTable[0]); Assert.Equal(Colors[1], colorTable[1]); Assert.Equal(Colors[2], colorTable[2]); Assert.Equal(Colors[3], colorTable[3]); Assert.Equal(Colors[4], colorTable[4]); }
public void MembersRetrieveSingleColorWithAlpha() { var c = (SKColor)0x33008200; var pm = SKPMColor.PreMultiply(c); var upm = SKPMColor.UnPreMultiply(pm); Assert.AreEqual(new SKColor(0x33008200), c); Assert.AreEqual(new SKPMColor(0x33001A00), pm); Assert.AreEqual(new SKColor(0x33008200), upm); var ctContents = new[] { pm }; var ct = new SKColorTable(ctContents, 1); Assert.AreEqual(1, ct.Count); Assert.AreEqual(new SKPMColor(0x33001A00), ct[0]); }
public void MembersRetrieveColors() { var colorTable = new SKColorTable(Colors); Assert.AreEqual(Colors.Length, colorTable.Count); Assert.AreEqual(PMColors, colorTable.Colors); Assert.AreEqual(Colors, colorTable.UnPreMultipledColors); Assert.AreEqual(PMColors[0], colorTable[0]); Assert.AreEqual(PMColors[1], colorTable[1]); Assert.AreEqual(PMColors[2], colorTable[2]); Assert.AreEqual(PMColors[3], colorTable[3]); Assert.AreEqual(PMColors[4], colorTable[4]); Assert.AreEqual(PMColors[5], colorTable[5]); Assert.AreNotEqual(Colors[0], colorTable[0]); Assert.AreNotEqual(Colors[1], colorTable[1]); Assert.AreNotEqual(Colors[2], colorTable[2]); Assert.AreNotEqual(Colors[3], colorTable[3]); Assert.AreNotEqual(Colors[4], colorTable[4]); Assert.AreNotEqual(Colors[5], colorTable[5]); }
public void Index8ImageCanChangeColorTable() { var path = Path.Combine(PathToImages, "index8.png"); var codec = SKCodec.Create(new SKFileStream(path)); var info = new SKImageInfo(codec.Info.Width, codec.Info.Height, SKColorType.Index8, SKAlphaType.Premul); var bitmap = SKBitmap.Decode(codec, info); var colorTable = bitmap.ColorTable; Assert.AreEqual((SKColor)0xFFA4C639, colorTable.GetUnPreMultipliedColor(255)); var invertedColors = colorTable.Colors.Select(c => { var c2 = (SKColor)c; var inv = new SKColor((byte)(255 - c2.Red), (byte)(255 - c2.Green), (byte)(255 - c2.Blue), c2.Alpha); return((SKPMColor)inv); }).ToArray(); colorTable = new SKColorTable(invertedColors); bitmap.SetColorTable(colorTable); Assert.AreEqual((SKColor)0xFF5B39C6, colorTable.GetUnPreMultipliedColor(255)); }
public void IndexerOutOfRangeAbove() { var colorTable = new SKColorTable(Colors); var color = colorTable[5]; }
public void IndexerOutOfRangeBelow() { var colorTable = new SKColorTable(Colors); var color = colorTable[-1]; }