Esempio n. 1
0
        public static IControl Render(ObservableCard card)
        {
            if (card == null)
            {
                return(null);
            }

            var renderer = card.InternalObject.Edition == Models.Edition.FirstEdition ? new FirstEditionCardRenderer() : null;

            return(renderer?.GetControl(card.InternalObject));
        }
Esempio n. 2
0
        public static void RenderToFile(ObservableCard card, string filename)
        {
            var target = Render(card);

            if (null != target)
            {
                var pixelSize = new PixelSize((int)target.Width, (int)target.Height);
                var size      = new Size(target.Width, target.Height);
                var dpiVector = new Vector(96, 96);

                using var renderBitmap = new RenderTargetBitmap(pixelSize, dpiVector);

                target.Measure(size);
                target.Arrange(new Rect(size));
                renderBitmap.Render(target);
                renderBitmap.Save(filename);
            }
        }
Esempio n. 3
0
        private async void FlipCard(object sender, EventArgs e)
        {
            Frame          CardFrame = (Frame)sender;
            ObservableCard Card      = (ObservableCard)CardFrame.BindingContext;

            // PERFORM FIRST HALF OF THE FLIP
            await CardFrame.RotateYTo(90, 200, Easing.CubicInOut);

            // UPDATES ITEM
            await Card.Flip();

            // PERFORM SECOND HALF OF THE FLIP
            if (Card.ShowBack)
            {
                await CardFrame.RotateYTo(180, 200, Easing.CubicInOut);
            }
            else
            {
                await CardFrame.RotateYTo(0, 200, Easing.CubicInOut);
            }
        }