Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Program {
- public const string IMG_PATH = @"c:\dev\hhgg.png";
- public const string TXT_PATH = @"c:\dev\hhgg.txt";
- static void Main(string[] args) {
- Encode();
- Decode();
- }
- private static void Decode() {
- var img = (Bitmap)Image.FromFile(IMG_PATH);
- using (var sw = new StreamWriter(TXT_PATH))
- for (var i = 0; i < img.Height; i++)
- for (var j = 0; j < img.Width; j++) {
- var px = img.GetPixel(j, i);
- sw.Write("{0}{1}{2}{3}", (char)px.A, (char)px.R, (char)px.G, (char)px.B);
- }
- Process.Start(TXT_PATH);
- }
- private static void Encode() {
- const int width = 267, height = 251;
- var txt = File.ReadAllText(TXT_PATH);
- var bytes = new Queue<byte>(Encoding.ASCII.GetBytes(txt));
- var colors = new Queue<Color>(Enumerable.Repeat(0, 67017)
- .Select(x => Color.FromArgb(bytes.Dequeue(), bytes.Dequeue(), bytes.Dequeue(), bytes.Dequeue())));
- var img = new Bitmap(width, height);
- for (var i = 0; i < img.Height; i++)
- for (var j = 0; j < img.Width; j++)
- img.SetPixel(j, i, colors.Dequeue());
- img.Save(IMG_PATH, ImageFormat.Png);
- Process.Start(IMG_PATH);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement