public SignatureImageViewModel() { _sigService = DependencyService.Get<ISignatureService> (); SignatureCommand = new Command(async (obj) => { Debug.WriteLine("Signature pad requested..."); var result = await _sigService.Request(new SignaturePadConfiguration() { StrokeColor = Color.Blue, StrokeWidth = Device.OnPlatform<int>(2, 4, 4), ClearTextColor = Color.Red, PromptTextColor = Color.Red, SignatureLineColor = Color.Red, CaptionText = "Rotate for larger signing area", CaptionTextColor = Color.Black }); if (result.Cancelled) await UserDialogs.Instance.AlertAsync("Signature Cancelled"); else { using (var sigStream = result.GetStream()) { sigStream.Position = 0; var ms = new MemoryStream(); sigStream.CopyTo(ms); byte[] sigBytes = ms.ToArray(); SignatureImage = sigBytes; } } }); }