public void InsertFrame_clones_sourceFrame() { var otherFrame = new ImageFrame <Rgba32>(Configuration.Default, 10, 10); ImageFrame <Rgba32> addedFrame = this.Image.Frames.InsertFrame(0, otherFrame); Assert.True(otherFrame.TryGetSinglePixelSpan(out Span <Rgba32> otherFrameSpan)); addedFrame.ComparePixelBufferTo(otherFrameSpan); Assert.NotEqual(otherFrame, addedFrame); }
public void InsertFrame_clones_sourceFrame() { using var otherFrame = new ImageFrame <Rgba32>(Configuration.Default, 10, 10); using ImageFrame <Rgba32> addedFrame = this.Image.Frames.InsertFrame(0, otherFrame); Assert.True(otherFrame.DangerousTryGetSinglePixelMemory(out Memory <Rgba32> otherFrameMem)); addedFrame.ComparePixelBufferTo(otherFrameMem.Span); Assert.NotEqual(otherFrame, addedFrame); }
public void CreateFrame_CustomFillColor() { this.Image.Frames.CreateFrame(Rgba32.HotPink); Assert.Equal(2, this.Image.Frames.Count); ImageFrame <Rgba32> frame = (ImageFrame <Rgba32>) this.Image.Frames[1]; frame.ComparePixelBufferTo(Rgba32.HotPink); }
public void CreateFrame_Default() { this.Image.Frames.CreateFrame(); Assert.Equal(2, this.Image.Frames.Count); ImageFrame <Rgba32> frame = (ImageFrame <Rgba32>) this.Image.Frames[1]; frame.ComparePixelBufferTo(default(Rgba32)); }
public void CanDecodeIntermingledImages() { using (var kumin1 = Image.Load(TestFile.Create(TestImages.Gif.Kumin).Bytes)) using (var icon = Image.Load(TestFile.Create(TestImages.Png.Icon).Bytes)) using (var kumin2 = Image.Load(TestFile.Create(TestImages.Gif.Kumin).Bytes)) { for (int i = 0; i < kumin1.Frames.Count; i++) { ImageFrame <Rgba32> first = kumin1.Frames[i]; ImageFrame <Rgba32> second = kumin2.Frames[i]; first.ComparePixelBufferTo(second.GetPixelSpan()); } } }
public void InsertFrame_OfDifferentPixelType() { using (Image <Bgra32> sourceImage = new Image <Bgra32>( this.Image.GetConfiguration(), this.Image.Width, this.Image.Height, Color.Blue)) { this.Collection.InsertFrame(0, sourceImage.Frames.RootFrame); } Rgba32[] expectedAllBlue = Enumerable.Repeat(Rgba32.Blue, this.Image.Width * this.Image.Height).ToArray(); Assert.Equal(2, this.Collection.Count); ImageFrame <Rgba32> actualFrame = (ImageFrame <Rgba32>) this.Collection[0]; actualFrame.ComparePixelBufferTo(expectedAllBlue); }