diff --git a/ShareX.ScreenCaptureLib/Shapes/Effect/BaseEffectShape.cs b/ShareX.ScreenCaptureLib/Shapes/Effect/BaseEffectShape.cs index 831be7485..2bb2b8ff9 100644 --- a/ShareX.ScreenCaptureLib/Shapes/Effect/BaseEffectShape.cs +++ b/ShareX.ScreenCaptureLib/Shapes/Effect/BaseEffectShape.cs @@ -41,7 +41,7 @@ public virtual void OnDraw(Graphics g) if (cachedEffect != null) { g.InterpolationMode = InterpolationMode.NearestNeighbor; - g.DrawImage(cachedEffect, Rectangle); + g.DrawImage(cachedEffect, RectangleInsideCanvas); g.InterpolationMode = InterpolationMode.Bilinear; } else @@ -85,8 +85,12 @@ public override void OnResized() private void CacheEffect() { Dispose(); - cachedEffect = Manager.CropImage(Rectangle); - ApplyEffect((Bitmap)cachedEffect); + + if (IsInsideCanvas) + { + cachedEffect = Manager.CropImage(RectangleInsideCanvas); + ApplyEffect((Bitmap)cachedEffect); + } } public override void Dispose()