簡體   English   中英

在System.Drawing.Bitmap中轉換畫布的背景?

[英]Convert a background of a canvas in System.Drawing.Bitmap?

如何在System.Drawing.Bitmap轉換CANVAS的背景? canvas圖像是kinect圖像的背景。 該應用程序是在WPF中完成的。

我已經在畫布上創建了一個矩形並保存了它,可能是您可以根據需要更改代碼

using (Graphics g = Graphics.FromImage(image))
{
    g.CompositingMode = System.Drawing.Drawing2D.CompositingMode.SourceCopy;

    foreach (var child in canvas.Children)
    {
        if (child is System.Windows.Shapes.Rectangle)
        {
            var oldRect = child as System.Windows.Shapes.Rectangle;

            // need to do something here to make the new rect bigger as the scale is clearly different
            var rect = new Rectangle((int)Canvas.GetLeft(oldRect), (int)Canvas.GetTop(oldRect), (int)oldRect.Width, (int)oldRect.Height);
            g.FillRectangle(Brushes.Black, rect);
        }
    }
    RenderTargetBitmap bmp = new RenderTargetBitmap((int)Canvas1.Width, (int)Canvas1.Height, 96, 96, PixelFormats.Default);
    bmp.Render(Canvas1);
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM