public override object Clone() { LimitSizeStageOperationParameters target = new LimitSizeStageOperationParameters(); CopyDataTo(target); return(target); }
public override void OnDo(IBitmapCore hdp) { LimitSizeStageOperationParameters pm = (LimitSizeStageOperationParameters)Parameters; Console.WriteLine("Limiting size..."); double w = hdp.Width, h = hdp.Height; if (pm.LimitWidth && w > pm.NewWidth) { h *= pm.NewWidth / w; w = pm.NewWidth; } if (pm.LimitHeight && h > pm.NewHeight) { w *= pm.NewHeight / h; h = pm.NewHeight; } if (pm.LimitWidth || pm.LimitHeight) { hdp.Resize((int)w, (int)h, 3, delegate(double progress) { return(OnReportProgress(progress)); }); } }
public override void CopyDataTo(StageOperationParameters target) { base.CopyDataTo(target); LimitSizeStageOperationParameters t = (LimitSizeStageOperationParameters)target; t.mNewWidth = mNewWidth; t.mNewHeight = mNewHeight; t.mLimitWidth = mLimitWidth; t.mLimitHeight = mLimitHeight; t.OnChanged(); }
public override object Clone() { LimitSizeStageOperationParameters target = new LimitSizeStageOperationParameters(); CopyDataTo(target); return target; }