Example #1
0
        private void FillChunkInfo(string imagePath)
        {
            List <Chunk> chunks    = ChunkParser.Parse(PNGFile.Read(imagePath));
            string       chunkInfo = GetChunksInfo(chunks);

            InfoText.Text = chunkInfo;
        }
Example #2
0
        public void ShouldReadsRGB()
        {
            string filePath = @"../../../Data/Plan.png";
            sRGB   srgb     = new sRGB(PNGFile.Read(filePath)[1]);

            Assert.AreEqual("sRGB", srgb.Type);
        }
Example #3
0
        private List <Chunk> ReadAndParseChunks()
        {
            List <Chunk> chunks       = PNGFile.Read(FilepathTextBox.Text);
            List <Chunk> parsedChunks = ChunkParser.Parse(chunks);

            return(parsedChunks);
        }
Example #4
0
        public void ShouldReadzTXT()
        {
            string filePath = @"../../../Data/czerwony.png";
            zTXt   ztxt     = new zTXt(PNGFile.Read(filePath)[2]);

            Assert.AreEqual("zTXt", ztxt.Type);
        }
Example #5
0
        public void ShouldReadIEND()
        {
            string filePath = @"../../../Data/przekladnia.png";
            IEND   iend     = new IEND(PNGFile.Read(filePath).Last());

            Assert.AreEqual("IEND", iend.Type);
        }
Example #6
0
        public void ShouldContainCorrectData()
        {
            string filePath = @"../../../Data/czerwony.png";
            zTXt   ztxt     = new zTXt(PNGFile.Read(filePath)[2]);

            Assert.AreEqual("Raw profile type APP1", ztxt.Keyword);
        }
Example #7
0
        public void ShouldContainCorrectData()
        {
            string filePath = @"../../../Data/kostki.png";
            gAMA   gama     = new gAMA(PNGFile.Read(filePath)[1]);

            Assert.AreEqual(45455, gama.Gamma);
        }
Example #8
0
        public void ShouldReadgAMA()
        {
            string filePath = @"../../../Data/kostki.png";
            gAMA   gama     = new gAMA(PNGFile.Read(filePath)[1]);

            Assert.AreEqual("gAMA", gama.Type);
        }
Example #9
0
        public void ShouldReadIDAT()
        {
            string filePath = @"../../../Data/Plan.png";
            IDAT   idat     = new IDAT(PNGFile.Read(filePath)[4]);

            Assert.AreEqual("IDAT", idat.Type);
        }
Example #10
0
        public void ShouldReadtIME()
        {
            string filePath = @"../../../Data/przekladnia.png";
            tIME   time     = new tIME(PNGFile.Read(filePath)[2]);

            Assert.AreEqual("tIME", time.Type);
        }
Example #11
0
        public void ShouldReadbKGD()
        {
            string filePath = @"../../../Data/Ruch_wirowy.png";
            bKGD   bkgd     = new bKGD(PNGFile.Read(filePath)[1]);

            Assert.AreEqual("Red: 255, Green: 255, Blue: 255", bkgd.BackgroundColor.ToString());
        }
Example #12
0
        public void ShouldContainCorrectData()
        {
            string filePath = @"../../../Data/Plan.png";
            sRGB   srgb     = new sRGB(PNGFile.Read(filePath)[1]);

            Assert.AreEqual(0, srgb.RenderingIntent);
        }
Example #13
0
        public void ShouldReadtEXtFromLena()
        {
            string filePath = @"../../../Data/lena2.png";
            tEXt   text     = new tEXt(PNGFile.Read(filePath)[5]);

            Assert.AreEqual("tEXt", text.Type);
            Assert.AreEqual("date:create", text.Keyword);
        }
Example #14
0
        public void ShouldReadiCCP()
        {
            string filePath = @"../../../Data/lena2.png";
            iCCP   iccp     = new iCCP(PNGFile.Read(filePath)[1]);

            Assert.AreEqual("icc", iccp.ProfileName);
            Assert.AreEqual(0, iccp.CompressionMethod);
        }
Example #15
0
        public void ShouldWritePNGFile()
        {
            string       filePath        = @"../../../Data/Plan.png";
            List <Chunk> chunks          = PNGFile.Read(filePath);
            string       filePathToWrite = @"../../../Data/PlanSaved.png";

            PNGFile.Write(filePathToWrite, chunks);
        }
Example #16
0
        public void ShouldContainCorrectEndianFlag()
        {
            string       filePath = @"../../../Data/kostkiExif.png";
            List <Chunk> chunks   = PNGFile.Read(filePath);
            eXIf         exif     = new eXIf(chunks[chunks.Count - 2]);

            Assert.AreEqual("MM", exif.EndianFlag);
        }
Example #17
0
        public void ShouldReadeXIf()
        {
            string       filePath = @"../../../Data/kostkiExif.png";
            List <Chunk> chunks   = PNGFile.Read(filePath);
            eXIf         exif     = new eXIf(chunks[chunks.Count - 2]);

            Assert.AreEqual("eXIf", exif.Type);
        }
Example #18
0
        public void ShouldReadtEXtFromItxt()
        {
            string filePath = @"../../../Data/itxt.png";
            tEXt   text     = new tEXt(PNGFile.Read(filePath)[7]);

            Assert.AreEqual("tEXt", text.Type);
            Assert.AreEqual("Title", text.Keyword);
            Assert.AreEqual("PNG", text.Text);
        }
Example #19
0
        public void ShouldReadcHRM()
        {
            string filePath = @"../../../Data/papugaxd.png";
            PLTE   plte     = new PLTE(PNGFile.Read(filePath)[4]);

            Assert.AreEqual("PLTE", plte.Type);
            Assert.AreEqual(new PLTE.Entry(0, 0, 0), plte.Entries.First());
            Assert.AreEqual(new PLTE.Entry(8, 255, 255), plte.Entries.Last());
        }
Example #20
0
        public void ShouldReadsBIT()
        {
            string filePath = @"../../../Data/lena.png";
            sBIT   sbit     = new sBIT(PNGFile.Read(filePath)[1]);

            Assert.AreEqual("sBIT", sbit.Type);
            Assert.AreEqual(8, sbit.SignificantBits[0]);
            Assert.AreEqual(3, sbit.SignificantBits.Length);
        }
Example #21
0
        public void ShouldContainDecompressedText()
        {
            string filePath = @"../../../Data/czerwony.png";
            zTXt   ztxt     = new zTXt(PNGFile.Read(filePath)[2]);

            Assert.AreEqual(
                "\ngeneric profile\n      34\n49492a0008000000010031010200070000001a00000000000000476f6f676c650000\n",
                ztxt.Text);
        }
Example #22
0
        public void ShouldContainCorrectDate()
        {
            string filePath = @"../../../Data/przekladnia.png";
            tIME   time     = new tIME(PNGFile.Read(filePath)[2]);

            Assert.AreEqual(2009, time.LatestModificationDate.Year);
            Assert.AreEqual(7, time.LatestModificationDate.Month);
            Assert.AreEqual(24, time.LatestModificationDate.Day);
        }
Example #23
0
        public void ShouldReadpHYs()
        {
            string filePath = @"../../../Data/IccP.png";
            pHYs   phys     = new pHYs(PNGFile.Read(filePath)[2]);

            Assert.AreEqual(phys.PixelsPerUnitX, 3543);
            Assert.AreEqual(phys.PixelsPerUnitY, 3543);
            Assert.AreEqual(phys.UnitSpecifier, 1);
        }
        public void ShouldDecipherImageWithoutFiltering()
        {
            string       filePathToRead   = @"../../../Data/square_wave_encrypted.png";
            string       filePathToWrite  = @"../../../Data/square_wave_decrypted.png";
            List <Chunk> chunks           = PNGFile.Read(filePathToRead);
            List <Chunk> parsedChunks     = ChunkParser.Parse(chunks);
            List <Chunk> decipheredChunks = imageBlockCipher.DecipherWithoutFiltering(parsedChunks);

            PNGFile.Write(filePathToWrite, decipheredChunks);
        }
Example #25
0
        public void ShouldParseChunks()
        {
            string       filePath = @"../../../Data/kostki.png";
            List <Chunk> chunks   = PNGFile.Read(filePath);
            List <Chunk> result   = ChunkParser.Parse(chunks);
            cHRM         expected = new cHRM(PNGFile.Read(filePath)[2]);
            cHRM         chrm     = (cHRM)result[2];

            Assert.AreEqual(expected.WhitePointX, chrm.WhitePointX);
        }
Example #26
0
        public void ShouldCipherLenaImageWithoutFiltering()
        {
            string       filePathToRead  = @"../../../Data/Lena.png";
            string       filePathToWrite = @"../../../Data/Lena_encrypted.png";
            List <Chunk> chunks          = PNGFile.Read(filePathToRead);
            List <Chunk> parsedChunks    = ChunkParser.Parse(chunks);
            List <Chunk> cipheredChunks  = imageBlockCipher.CipherWithoutFiltering(parsedChunks);

            PNGFile.Write(filePathToWrite, cipheredChunks);
        }
Example #27
0
        public void ShouldDecompressText()
        {
            string filePath = @"../../../Data/itxt.png";
            iTXt   itxt     = new iTXt(PNGFile.Read(filePath)[PNGFile.Read(filePath).Count - 2]);

            Assert.AreEqual("Warning", itxt.Keyword);
            Assert.AreEqual(1, itxt.CompressionFlag);
            Assert.AreEqual(
                "Es is verboten, um diese Datei in das GIF-Bildformat\numzuwandeln.  Sie sind gevarnt worden.",
                itxt.Text);
        }
Example #28
0
        public void ShouldReadiTXt()
        {
            string filePath = @"../../../Data/itxt.png";
            iTXt   itxt     = new iTXt(PNGFile.Read(filePath)[8]);

            Assert.AreEqual("Author", itxt.Keyword);
            Assert.AreEqual(0, itxt.CompressionFlag);
            Assert.AreEqual(0, itxt.CompressionMethod);
            Assert.AreEqual("fr", itxt.LanguageTag);
            Assert.AreEqual("Auteur", itxt.TranslatedKeyword);
            Assert.AreEqual("La plume de ma tante", itxt.Text);
        }
Example #29
0
        public void ShouldReadIHDR()
        {
            string filePath = @"../../../Data/Plan.png";
            IHDR   ihdr     = new IHDR(PNGFile.Read(filePath)[0]);

            Assert.AreEqual("IHDR", ihdr.Type);
            Assert.AreEqual(1438, ihdr.Width);
            Assert.AreEqual(640, ihdr.Height);
            Assert.AreEqual(8, ihdr.BitDepth);
            Assert.AreEqual(6, ihdr.ColorType);
            Assert.AreEqual(0, ihdr.CompressionMethod);
            Assert.AreEqual(0, ihdr.FilterMethod);
            Assert.AreEqual(0, ihdr.InterlaceMethod);
        }
Example #30
0
        public void ShouldReadcHRM()
        {
            string filePath = @"../../../Data/kostki.png";
            cHRM   chrm     = new cHRM(PNGFile.Read(filePath)[2]);

            Assert.AreEqual("cHRM", chrm.Type);
            Assert.AreEqual(31270, chrm.WhitePointX);
            Assert.AreEqual(32900, chrm.WhitePointY);
            Assert.AreEqual(64000, chrm.RedX);
            Assert.AreEqual(33000, chrm.RedY);
            Assert.AreEqual(30000, chrm.GreenX);
            Assert.AreEqual(60000, chrm.GreenY);
            Assert.AreEqual(15000, chrm.BlueX);
            Assert.AreEqual(6000, chrm.BlueY);
        }