dpiで悩んだが無事にできるようになった。
PresentationSource source = PresentationSource.FromVisual(this); double dpiX, dpiY; if (source != null) { var location = gridMychart.PointToScreen(new Point(0, 0)); dpiX = gridMychart.ActualWidth * source.CompositionTarget.TransformToDevice.M11; dpiY = gridMychart.ActualHeight * source.CompositionTarget.TransformToDevice.M22; Debug.WriteLine(dpiX); Debug.WriteLine(dpiY); var bitmap = new System.Drawing.Bitmap((int)dpiX, (int)dpiY, System.Drawing.Imaging.PixelFormat.Format32bppArgb); var graphics = System.Drawing.Graphics.FromImage(bitmap); graphics.CopyFromScreen(new System.Drawing.Point((int)(location.X), (int)(location.Y)), new System.Drawing.Point(0, 0), bitmap.Size); // グラフィックスの解放 graphics.Dispose(); System.Windows.Forms.Clipboard.SetImage(bitmap); }