/*private float beginScale = 1; * private void resetScale() * { * matrix = SKMatrix.Identity; * SKMatrix.PostConcat(ref matrix, SKMatrix.CreateScale(beginScale, beginScale, canvasView.CanvasSize.Width, canvasView.CanvasSize.Height)); * }*/ private void bitmapInit() { this.renderingMode = (RenderingMode)Preferences.Get("RenderingMode", 2); if (renderingMode == RenderingMode.DoubleBuffering) { this.doubleBufferingBitmap = new SKBitmap((int)this.canvasView.CanvasSize.Width, (int)this.canvasView.CanvasSize.Height); this.bitmapCanvas = new SKCanvas(doubleBufferingBitmap); } else if (renderingMode == RenderingMode.FullDoubleBuffering) { try { this.bitmap = new SKBitmap(LongUzorGraphic.GetResultContentWidth() > 7000? 7000 : LongUzorGraphic.GetResultContentWidth(), LongUzorGraphic.GetResultContentHeight() > 13000? 13000: LongUzorGraphic.GetResultContentHeight()); } catch (System.Exception e) { this.bitmap = new SKBitmap(3000, 4000); var mb = new MessageBox(e.Message + " " + AppResource.SwitchRenderingAlert); mb.OkButton_Clicked += hideAlert; this.mainGrid.Children.Add(mb); this.renderingMode = RenderingMode.Low; } this.bitmapCanvas = new SKCanvas(bitmap); } else { return; } this.updateBitmap(); }