1
public RenderTargetBitmap GetSketchContentForExport()
    {
        Rect rectBounds = VisualTreeHelper.GetDescendantBounds(drawingCanvas);

        RenderTargetBitmap renderTarget = new RenderTargetBitmap((int)rectBounds.Width, (int)rectBounds.Height, 96, 96, PixelFormats.Pbgra32);

        DrawingVisual drawingVisual = new DrawingVisual();

        using (DrawingContext drawingContext = drawingVisual.RenderOpen())
        {
            VisualBrush visualBrush = new VisualBrush(drawingCanvas);
            drawingContext.DrawRectangle(visualBrush, null, new Rect(new Point(), rectBounds.Size));
        }
        renderTarget.Render(drawingVisual);


        return renderTarget;
    }

将画布内容渲染为位图时,会显示所有内容,但也有灰色边框(确切地说是不在当前视图中的部分)。在外部工具 (XnView) 中编辑生成的图像并使用“真彩色”选项可以解决该问题。有谁看到我如何在我的代码中解决这个问题?我很感激任何帮助!

4

0 回答 0