Pracuję w Xamarin i chciałbym narysować prosty okrąg z tekstem "CIRCLE" wewnątrz i wyświetlić ten obraz w UIImageView. Problem polega na tym, że okrąg i tekst wydają się bardzo rozmyte. Czytałem trochę o subpikselach, ale nie sądzę, że to mój problem.Rysowanie przez IOS prosty obraz okazuje się rozmazane przy użyciu Xamarin C#
Oto rozmyty obraz i kod z nadzieją, ktoś ma jakieś pomysły :)
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;
Podwojenie piksela na siatkówkę było problemem i Twoja sugestia go rozwiązała. Dobra robota, dziękuję :) –