public byte[] ExtractBytes(Bitmap image, AlgorithmSettings settings) { Color[] colors = BitmapConverter.BitmapToColorArray(image, settings.Direction); int offset = CalculateOffset(settings.OffsetX, settings.OffsetY, image.Width, image.Height, settings.Direction); return(ReadBytesFromColorArray(colors, offset)); }
public string ExtractText(Bitmap image, AlgorithmSettings settings) { Color[] colors = BitmapConverter.BitmapToColorArray(image, settings.Direction); int offset = CalculateOffset(settings.OffsetX, settings.OffsetY, image.Width, image.Height, settings.Direction); var data = ReadBytesFromColorArray(colors, offset); return(Encoding.UTF8.GetString(data)); }
public Bitmap HideBytes(byte[] data, Bitmap image, AlgorithmSettings settings) { Color[] colors = BitmapConverter.BitmapToColorArray(image, settings.Direction); var cleaned = BitmapConverter.CleanColorArrayFromLSB(colors); int offset = CalculateOffset(settings.OffsetX, settings.OffsetY, image.Width, image.Height, settings.Direction); var hiden = WriteBytesInColorArray(data, cleaned, offset); return(BitmapConverter.ColorArrayToBitmap(hiden, image.Width, image.Height, settings.Direction)); }