Force cached effect to be inside canvas

This commit is contained in:
Jaex 2017-11-14 15:27:32 +03:00
parent d3295a412a
commit 09f6edce4a

View file

@ -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()