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) で編集し、オプション「True Colour」を使用すると、この問題が修正されます。私のコードでこの問題を解決する方法を知っている人はいますか? どんな助けにも感謝します!