una tutorial source insertar images imagen como ios xamarin.ios blurry uigraphicscontext

tutorial - IOS dibuja una imagen simple resulta borrosa usando Xamarin C#



xamarin ios tutorial (1)

La razón por la que está borroso es porque se redimensionó. Ese mapa de bits no es 150x150 (como el contexto que ha creado), tiene 333x317 píxeles.

Podría ser porque imageView está escalando su imagen (no hay código fuente) o debido a la duplicación de píxeles (para pantallas Retina). En el caso posterior, lo que realmente quieres usar es:

UIGraphics.BeginImageContextWithOptions (size, false, 0);

que utilizará automágicamente (utilizando 0 ) el factor de escala correcto para la pantalla retina (o no) y se verá nítida (y no demasiado grande) en todos los tipos de dispositivos.

Estoy desarrollando en Xamarin y me gustaría dibujar un círculo simple con el texto "CIRCLE" dentro de él y mostrar esa imagen en un UIImageView. El problema es que el círculo y el texto aparecen muy borrosos. He leído un poco sobre los subpíxeles, pero no creo que ese sea mi problema.

Aquí está la imagen borrosa y el código, esperando que alguien tenga algunas ideas :)

UIGraphics.BeginImageContext (new SizeF(150,150)); var context = UIGraphics.GetCurrentContext (); var content = "CIRCLE"; var font = UIFont.SystemFontOfSize (16); const float width = 150; const float height = 150; context.SetFillColorWithColor (UIColor.Red.CGColor); context.FillEllipseInRect (new RectangleF (0, 0, width, height)); var contentString = new NSString (content); var contentSize = contentString.StringSize (font); var rect = new RectangleF (0, ((height - contentSize.Height) / 2) + 0, width, contentSize.Height); context.SetFillColorWithColor (UIColor.White.CGColor); new NSString (content).DrawString (rect, font, UILineBreakMode.WordWrap, UITextAlignment.Center); var image = UIGraphics.GetImageFromCurrentImageContext (); imageView.Image = image;