diff --git a/ShareX.ScreenCaptureLib/Forms/RectangleRegion.cs b/ShareX.ScreenCaptureLib/Forms/RectangleRegion.cs index a857697b0..a19f0a8d0 100644 --- a/ShareX.ScreenCaptureLib/Forms/RectangleRegion.cs +++ b/ShareX.ScreenCaptureLib/Forms/RectangleRegion.cs @@ -478,6 +478,12 @@ protected virtual void WriteTips(StringBuilder sb) if (AreaManager.CurrentShapeType == ShapeType.RegionDiamond) sb.Append("-> "); sb.AppendLine(Resources.RectangleRegion_WriteTips__Numpad_5__Diamond_shape); + //TODO: Translate + if (AreaManager.CurrentShapeType == ShapeType.DrawingRectangle) sb.Append("-> "); + sb.AppendLine("[Numpad 7] Rectangle drawing"); + if (AreaManager.CurrentShapeType == ShapeType.DrawingRoundedRectangle) sb.Append("-> "); + sb.AppendLine("[Numpad 8] Rounded rectangle drawing"); + switch (AreaManager.CurrentShapeType) { case ShapeType.RegionRoundedRectangle: @@ -721,6 +727,25 @@ public void UpdateRegionPath() } } + public override Image GetResultImage() + { + if (SurfaceImage != null) + { + using (Graphics g = Graphics.FromImage(SurfaceImage)) + { + foreach (BaseDrawingShape shape in AreaManager.DrawingShapes) + { + if (shape != null) + { + shape.Draw(g); + } + } + } + } + + return base.GetResultImage(); + } + protected override void Dispose(bool disposing) { if (bmpSurfaceImage != null) diff --git a/ShareX.ScreenCaptureLib/Forms/Surface.cs b/ShareX.ScreenCaptureLib/Forms/Surface.cs index 13fb624dc..9aa8da592 100644 --- a/ShareX.ScreenCaptureLib/Forms/Surface.cs +++ b/ShareX.ScreenCaptureLib/Forms/Surface.cs @@ -241,7 +241,7 @@ protected override void OnPaint(PaintEventArgs e) Invalidate(); } - public virtual Image GetRegionImage() + public virtual Image GetResultImage() { return ShapeCaptureHelpers.GetRegionImage(SurfaceImage, regionFillPath, regionDrawPath, Config); } diff --git a/ShareX/Forms/MainForm.cs b/ShareX/Forms/MainForm.cs index 3faa66af3..89dd5d2d1 100644 --- a/ShareX/Forms/MainForm.cs +++ b/ShareX/Forms/MainForm.cs @@ -2107,7 +2107,7 @@ private void CaptureRegion(CaptureType captureType, TaskSettings taskSettings, b { using (screenshot) { - img = surface.GetRegionImage(); + img = surface.GetResultImage(); if (taskSettings.UploadSettings.RegionCaptureUseWindowPattern) {