Ejemplo n.º 1
0
 void DrawPositionFrame(ConcurrentGifsCommand.Frame frame, Graphics gfx)
 {
     gfx.DrawImage(frame.Image,
                   new Rectangle(
                       _animagedGifTemplateLocation.X, _animagedGifTemplateLocation.Y + VerticalOffset,
                       _animagedGifTemplateLocation.Width, _animagedGifTemplateLocation.Height));
 }
Ejemplo n.º 2
0
        public override void DrawFrame(ConcurrentGifsCommand.Frame frame, Graphics gfx)
        {
            if (frame.Start >= _startTime)
            {
                gfx.DrawString(_text, new Font(FontFamily.GenericSansSerif, 12), new SolidBrush(Color.Black),
                    new RectangleF(24, VerticalOffset + 60, 305, 110));
            }

            base.DrawFrame(frame, gfx);
        }
Ejemplo n.º 3
0
        public override void DrawFrame(ConcurrentGifsCommand.Frame currentFrame, Graphics gfx)
        {
            if (currentFrame.Start < _startTime)
                return;

            var newBackground = Image.FromStream(this.GetType().Assembly.GetManifestResourceStream(
                "Gifenstein.Resources.AllRightGentlemen_impressed.png"));

            gfx.DrawImageUnscaledAndClipped(newBackground, new Rectangle(0, VerticalOffset, newBackground.Width, newBackground.Height));

            base.DrawFrame(currentFrame, gfx);
        }
Ejemplo n.º 4
0
        public override void DrawFrame(ConcurrentGifsCommand.Frame currentFrame, Graphics gfx)
        {
            if (_frames.Contains(currentFrame))
            {
                DrawPositionFrame(currentFrame, gfx);
            }
            else
            {
                var widgetStart = _frames.First().Start;
                var widgetDuration = _frames.Last().End - widgetStart;

                if (currentFrame.Start > widgetStart)
                {
                    var relativePosition = (currentFrame.Start - widgetStart) % widgetDuration;
                    var relativeFrame = _frames.Where(f => f.Start <= widgetStart + relativePosition).LastOrDefault();

                    DrawFrame(relativeFrame, gfx);
                }
            }
        }
Ejemplo n.º 5
0
        public override IEnumerable <ConcurrentGifsCommand.Frame> GetFrames(int endOfLastFrame)
        {
            var timePlayedMS = 0;

            List <ConcurrentGifsCommand.Frame> result = new List <ConcurrentGifsCommand.Frame>();

            while (timePlayedMS < MinIntroTrime)
            {
                var lastPosition = endOfLastFrame;

                var newFrames = ConcurrentGifsCommand.GetFramesForSequentialAnimations(new[] { _animatedGifPath }, lastPosition);

                var timePlayedMs = (newFrames.Last().End - newFrames.First().Start);
                timePlayedMS += timePlayedMs;

                result.AddRange(newFrames);
            }

            _frames = result;

            return(result.Where(r => r.Start - endOfLastFrame < MaxIntroTime));
        }
Ejemplo n.º 6
0
 public virtual void DrawFrame(ConcurrentGifsCommand.Frame frame, Graphics gfx)
 {
 }