コード例 #1
0
ファイル: Image.cs プロジェクト: gitter-badger/Perspex
        public override void Render(IDrawingContext drawingContext)
        {
            Brush  background = this.Background;
            Bitmap source     = this.Source;

            if (background != null)
            {
                drawingContext.FillRectange(background, new Rect(this.ActualSize));
            }

            if (source != null)
            {
                Rect   viewPort   = new Rect(this.ActualSize);
                Size   sourceSize = new Size(source.PixelWidth, source.PixelHeight);
                Vector scale      = CalculateScaling(this.ActualSize, sourceSize, this.Stretch);
                Size   scaledSize = sourceSize * scale;
                Rect   destRect   = viewPort
                                    .Center(new Rect(scaledSize))
                                    .Intersect(viewPort);
                Rect sourceRect = new Rect(sourceSize)
                                  .Center(new Rect(destRect.Size / scale));

                drawingContext.DrawImage(source, 1, sourceRect, destRect);
            }
        }
コード例 #2
0
ファイル: Image.cs プロジェクト: Xbox-dev/XPF
 protected override void OnRender(IDrawingContext drawingContext)
 {
     if (this.Source != null)
     {
         drawingContext.DrawImage(this.Source, new Rect(new Point(), this.RenderSize));
     }
 }
コード例 #3
0
ファイル: SkiaImage.cs プロジェクト: royben/WpfToSkia
        protected override void OnRender(IDrawingContext context, Rect bounds, double opacity)
        {
            base.OnRender(context, bounds, opacity);

            Image image = WpfElement as Image;

            DrawingStyle style = DrawingStyle.FromElement(this);

            style.Opacity = opacity;

            context.DrawImage(bounds, image.Source as BitmapSource, style);
        }
コード例 #4
0
ファイル: Image.cs プロジェクト: MarkWalls/Perspex
        public override void Render(IDrawingContext drawingContext)
        {
            Bitmap source = this.Source;

            if (source != null)
            {
                Rect viewPort = new Rect(this.Bounds.Size);
                Size sourceSize = new Size(source.PixelWidth, source.PixelHeight);
                Vector scale = CalculateScaling(this.Bounds.Size, sourceSize, this.Stretch);
                Size scaledSize = sourceSize * scale;
                Rect destRect = viewPort
                    .CenterIn(new Rect(scaledSize))
                    .Intersect(viewPort);
                Rect sourceRect = new Rect(sourceSize)
                    .CenterIn(new Rect(destRect.Size / scale));

                drawingContext.DrawImage(source, 1, sourceRect, destRect);
            }
        }
コード例 #5
0
        /// <summary>
        /// Renders the control.
        /// </summary>
        /// <param name="context">The drawing context.</param>
        public override void Render(IDrawingContext context)
        {
            Bitmap source = Source;

            if (source != null)
            {
                Rect   viewPort   = new Rect(Bounds.Size);
                Size   sourceSize = new Size(source.PixelWidth, source.PixelHeight);
                Vector scale      = Stretch.CalculateScaling(Bounds.Size, sourceSize);
                Size   scaledSize = sourceSize * scale;
                Rect   destRect   = viewPort
                                    .CenterIn(new Rect(scaledSize))
                                    .Intersect(viewPort);
                Rect sourceRect = new Rect(sourceSize)
                                  .CenterIn(new Rect(destRect.Size / scale));

                context.DrawImage(source, 1, sourceRect, destRect);
            }
        }
コード例 #6
0
ファイル: ImageElement.cs プロジェクト: timgurke/Scriber
        public override void OnRender(IDrawingContext drawingContext, Measurement measurement)
        {
            var image = new Image(imageData, Image);

            drawingContext.DrawImage(image, new Rectangle(measurement.Position, measurement.Size));
        }
コード例 #7
0
ファイル: Image.cs プロジェクト: redbadger/XPF
 protected override void OnRender(IDrawingContext drawingContext)
 {
     if (this.Source != null)
     {
         drawingContext.DrawImage(this.Source, new Rect(new Point(), this.RenderSize));
     }
 }
コード例 #8
0
 public override void DrawImage(RImage image, RRect destRect, RRect srcRect)
 {
     _g.DrawImage(((ImageAdapter)image).Image, 1, Util.Convert(srcRect), Util.Convert(destRect));
 }