protected override void OnChangeFrameSize(LiteForms.Size newSize) { var size = new Size(newSize.Width, newSize.Height); canvas = Platforms.Current.CreateImageCanvas(size, 2); Refresh(size); }
public override void OnChangeFrameSize(LiteForms.Size newSize) { if (g == null || newSize.Width == 0 || newSize.Height == 0) { return; } var deltaX = newSize.Width / g.SampleableBox.Width; var deltaY = newSize.Height / g.SampleableBox.Height; g.Children.Clear(); foreach (var item in originals) { var cloned = item; if (cloned is NGraphics.Path path) { foreach (var op in path.Operations) { if (op is LineTo lineTo) { lineTo.Point.X *= deltaX; lineTo.Point.Y *= deltaY; } else if (op is MoveTo moveTo) { moveTo.Point.X *= deltaX; moveTo.Point.Y *= deltaY; } else if (op is CurveTo curveTo) { curveTo.Control2.X *= deltaX; curveTo.Control2.Y *= deltaY; curveTo.Control1.X *= deltaX; curveTo.Control1.Y *= deltaY; curveTo.Point.X *= deltaX; curveTo.Point.Y *= deltaY; } else { Console.WriteLine(""); } } } g.Children.Add(cloned); } base.OnChangeFrameSize(newSize); }
public static NGraphics.Size ToNGraphicSize(this LiteForms.Size sender) { return(new NGraphics.Size(sender.Width, sender.Height)); }