1
我有一個畫布,其中包含一個Image,在其中展示現有的BMP。我在畫布上繪製矩形並將它們添加到兒童角色。當我點擊保存時,我想更新底層的BMP文件。繪製到WPF畫布的位圖
以下代碼有效,但繪製到BMP的矩形比我繪製的小得多。我猜這個座標有一些不同嗎?也許我不應該使用System.Drawing?
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);
}
}
... code to save bmp
歡迎任何建議!
由於
非常好,非常感謝。我實際上沒有明白你的答案,但至少我現在有一個地方可以開始閱讀。這成像goop對我來說都是新的。 – Jonesie