Пример #1
0
        public Sprite(int width, int height, Colour c, MainWindow mainWindow = null)
        {
            _mainWindow  = mainWindow;
            Width        = width;
            Height       = height;
            FailedToLoad = false;

            Colours = new short[Width * Height];

            if (c == null)
            {
                c = ColourHandler.ByHex("00000000", Pixal.PIXEL_SPACE);
            }

            for (var i = 0; i < Colours.Length; i++)
            {
                Colours[i] = c.Code;
            }

            Glyphs = new short[Width * Height];
            for (var i = 0; i < Glyphs.Length; i++)
            {
                Glyphs[i] = (int)Pixal.PIXEL_SPACE;
            }

            StartAutoSaving();
        }
Пример #2
0
        public void Save(string file)
        {
            File = file;
            using (var writer = new BinaryWriter(System.IO.File.Open(file, FileMode.OpenOrCreate)))
            {
                writer.Write(Width);
                writer.Write(Height);

                for (var i = 0; i < Width * Height; i++)
                {
                    writer.Write(Colours[i]);
                }

                for (var i = 0; i < Width * Height; i++)
                {
                    var pixal = (short)ColourHandler.ByCode(Colours[i], (Pixal)Glyphs[i]).Pixal;
                    writer.Write(pixal);
                }
            }
        }