Exemple #1
0
        public static bool Init()
        {
            graphics = new GraphicsContext();
            SampleDraw.Init(graphics);

            textureList = new List <Texture2D>();

            var image1 = new Image("/Application/Sample/Imaging/ImageSample/test.jpg");

            image1.Decode();
            textureList.Add(createTexture(image1));
            image1.Dispose();

            var image2_1 = new Image("/Application/Sample/Imaging/ImageSample/test.jpg");
            var image2_2 = new Image("/Application/Sample/Imaging/ImageSample/test.png");

            image2_1.Decode();
            image2_2.Decode();
            image2_1.DrawImage(image2_2, new ImagePosition((image2_1.Size.Width - image2_2.Size.Width) / 2,
                                                           (image2_1.Size.Height - image2_2.Size.Height) / 2));
            textureList.Add(createTexture(image2_1));
            image2_2.Dispose();
            image2_1.Dispose();

            var image3_1 = new Image("/Application/Sample/Imaging/ImageSample/test.jpg");
            var image3_2 = image3_1.Crop(new ImageRect(image3_1.Size.Width / 4,
                                                       image3_1.Size.Height / 4,
                                                       image3_1.Size.Width / 4,
                                                       image3_1.Size.Height / 4));
            var image3_3 = image3_2.Resize(new ImageSize(image3_1.Size.Width, image3_1.Size.Height));

            textureList.Add(createTexture(image3_3));
            image3_3.Dispose();
            image3_2.Dispose();
            image3_1.Dispose();

#if false
            int pixelX = 32;
            int pixelY = 128;
#endif
            int pixelX = (graphics.Screen.Width / 2) - ((125 * 3) + (8 * 2));
            int pixelY = (graphics.Screen.Height / 2) - (250 / 2);

            SampleDraw.AddSprite("Simple Image", 0xffffffff, pixelX, pixelY - 32);
            SampleDraw.AddSprite("DrawImage", 0xffffffff, pixelX + 266, pixelY - 32);
            SampleDraw.AddSprite("Crop", 0xffffffff, pixelX + 532, pixelY - 32);

            foreach (var texture in textureList)
            {
                SampleDraw.AddSprite(new SampleSprite(texture, pixelX, pixelY));
                pixelX += texture.Width + 16;
            }

            return(true);
        }