PNGMask.PNG.RemoveNonCritical C# (CSharp) Method

RemoveNonCritical() public method

public RemoveNonCritical ( ) : void
return void
        public void RemoveNonCritical()
        {
            List<PNGChunk> toremove = new List<PNGChunk>();
            foreach (PNGChunk chunk in Chunks)
                if (!chunk.Critical)
                    toremove.Add(chunk);
            foreach (PNGChunk chunk in toremove)
                Chunks.Remove(chunk);
        }

Usage Example

Example #1
0
        public override void ImprintData(byte[] data)
        {
            string pass = SteganographyProvider.AskPassword();

            if (pass != null && pass.Length > 0)
            {
                PrepareKey(Encoding.UTF8.GetBytes(pass));
            }

            for (int i = 0; i < data.Length; i++)
            {
                data[i] ^= key[i % key.Length];
            }

            vector = data;

            image.RemoveNonCritical();
            ImprintPNG(data);
        }