SKBitmap GetCoverBitmap() { using (Stream stream = LocalResource.GetStream("cover.png", this)) { return(SKBitmap.Decode(stream)); }; }
async void OnSourceChanged() { if (Source.Contains("http")) { using (Stream stream = await httpClient.GetStreamAsync(Source)) { using (MemoryStream memStream = new MemoryStream()) { await stream.CopyToAsync(memStream); memStream.Seek(0, SeekOrigin.Begin); skSvg.Load(memStream); } } } else { using (var memStream = LocalResource.GetStream(Source)) { memStream.Seek(0, SeekOrigin.Begin); skSvg.Load(memStream); } } InvalidateSurface(); }
async void OnSourceChanged() { try { if (Source.Contains("http")) { bitmap = GetCoverBitmap(); InvalidateSurface(); if (!bitmapsStore.ContainsKey(Source)) { using (Stream stream = await httpClient.GetStreamAsync(Source)) { using (MemoryStream memStream = new MemoryStream()) { await stream.CopyToAsync(memStream); memStream.Seek(0, SeekOrigin.Begin); bitmap = SKBitmap.Decode(memStream); bitmapsStore.Add(Source, bitmap); } } } else { bitmap = bitmapsStore[Source]; } } else { using (Stream stream = LocalResource.GetStream(Source)) { bitmap = SKBitmap.Decode(stream); }; } InvalidateSurface(); } catch (Exception ex) { Console.WriteLine(ex.Message); } }