Esempio n. 1
0
        public void CloneIsDeep()
        {
            var meta = new BmpMetadata {
                BitsPerPixel = BmpBitsPerPixel.Pixel24
            };
            var clone = (BmpMetadata)meta.DeepClone();

            clone.BitsPerPixel = BmpBitsPerPixel.Pixel32;

            Assert.False(meta.BitsPerPixel.Equals(clone.BitsPerPixel));
        }
Esempio n. 2
0
        public void Identify_DetectsCorrectBitmapInfoHeaderType(string imagePath, BmpInfoHeaderType expectedInfoHeaderType)
        {
            var testFile = TestFile.Create(imagePath);

            using (var stream = new MemoryStream(testFile.Bytes, false))
            {
                IImageInfo imageInfo = Image.Identify(stream);
                Assert.NotNull(imageInfo);
                BmpMetadata bitmapMetadata = imageInfo.Metadata.GetBmpMetadata();
                Assert.NotNull(bitmapMetadata);
                Assert.Equal(expectedInfoHeaderType, bitmapMetadata.InfoHeaderType);
            }
        }
Esempio n. 3
0
        public void CloneIsDeep()
        {
            var meta = new BmpMetadata {
                BitsPerPixel = BmpBitsPerPixel.Pixel24, InfoHeaderType = BmpInfoHeaderType.Os2Version2
            };
            var clone = (BmpMetadata)meta.DeepClone();

            clone.BitsPerPixel   = BmpBitsPerPixel.Pixel32;
            clone.InfoHeaderType = BmpInfoHeaderType.WinVersion2;

            Assert.False(meta.BitsPerPixel.Equals(clone.BitsPerPixel));
            Assert.False(meta.InfoHeaderType.Equals(clone.InfoHeaderType));
        }
Esempio n. 4
0
        public void Encode_PreserveBitsPerPixel(string imagePath, BmpBitsPerPixel bmpBitsPerPixel)
        {
            var options = new BmpEncoder();

            var testFile = TestFile.Create(imagePath);

            using (Image <Rgba32> input = testFile.CreateRgba32Image())
            {
                using (var memStream = new MemoryStream())
                {
                    input.Save(memStream, options);

                    memStream.Position = 0;
                    using (var output = Image.Load <Rgba32>(memStream))
                    {
                        BmpMetadata meta = output.Metadata.GetBmpMetadata();

                        Assert.Equal(bmpBitsPerPixel, meta.BitsPerPixel);
                    }
                }
            }
        }
Esempio n. 5
0
 /// <summary>
 /// Initializes a new instance of the <see cref="BmpMetadata"/> class.
 /// </summary>
 /// <param name="other">The metadata to create an instance from.</param>
 private BmpMetadata(BmpMetadata other)
 {
     this.BitsPerPixel   = other.BitsPerPixel;
     this.InfoHeaderType = other.InfoHeaderType;
 }