Ejemplo n.º 1
0
        public void BmpRead16(string inputFileName)
        {
            int        ofs       = 0;
            FileStream inputFile = new FileStream(inputFileName, FileMode.Open);

            // byte[] bitmapFileHeader = new byte[sizeof(BITMAPFILEHEADER)];
            // byte[] bitmapInfoHeader = new byte[sizeof(BITMAPINFOHEADER)];
            // ofs += inputFile.Read(bitmapFileHeader, ofs, sizeof(BITMAPFILEHEADER));
            // ofs += inputFile.Read(bitmapInfoHeader, ofs, sizeof(BITMAPFILEHEADER));
            byte[] bitmapHeader = new byte[headerSize];
            ofs += inputFile.Read(bitmapHeader, 0, (int)headerSize);
            int wx        = (int)Utility.ExtractValueFromArray(bitmapHeader, 18, 4);
            int wy        = (int)Utility.ExtractValueFromArray(bitmapHeader, 22, 4);
            int depth     = (int)Utility.ExtractValueFromArray(bitmapHeader, 28, 2);
            int lineBytes = wx * depth / 8;
            int bufSize   = lineBytes * bitmapDy;

            byte[] bitmapOneLine = new byte[bufSize];
            for (int y = wy - 1 - bitmapDy; y >= 0; y -= bitmapDy)
            {
                // Debug.Print("y = " + y.ToString());
                inputFile.Read(bitmapOneLine, 0, (int)bufSize);
                LCDDevice.BitBltEx(0, (uint)y, (uint)wx, (uint)bitmapDy, bitmapOneLine);
                Thread.Sleep(10);
                // Debug.GC(true);
                // Debug.EnableGCMessages(true);
                // Debug.Print(Debug.GC(true).ToString());
            }
            inputFile.Close();
        }
Ejemplo n.º 2
0
        public static void Main()
        {
            Debug.Print("Mounting SD...");
            StorageDevice.MountSD("SD", mod, pinSDCS);
            LCDDevice.Clear();
            Program p = new Program();

            while (true)
            {
                for (int i = 1; i <= 1; i++)
                {
                    p.BmpRead16(@"\SD\MIF20120" + i.ToString() + "l.bmp");
                    Thread.Sleep(2000);
                }
            }
        }