コード例 #1
0
        private async Task UpdateWebViewAsync()
        {
            var sketchData = App.GetSketchData();

            if (sketchData != null)
            {
                using (var stream = new MemoryStream())
                {
                    InkRenderer.RenderImage(
                        (int)InkCanvas.CanvasSize.Width,
                        (int)InkCanvas.CanvasSize.Height,
                        sketchData.BackgroundColor,
                        sketchData.InkStrokes.ToList(),
                        stream,
                        (int)InkCanvas.CanvasSize.Width);

                    stream.Seek(0, SeekOrigin.Begin);

                    InkCanvas.UpdateImageStream(stream);
                }

                //var totalMemory = GC.GetTotalMemory(false);

                // Collect all generations of memory.
                GC.Collect();

                //System.Diagnostics.Debug.WriteLine("Memory Collected after Rendering ink:   {0:N0}",
                //                  totalMemory- GC.GetTotalMemory(true));
            }

            var webView = FullPreview;// IsSpanned ? FullPreview : SplitPreview;

            await webView.UpdateWebViewAsync().ConfigureAwait(false);
        }