10

私は Xamarin で開発しており、その中にテキスト "CIRCLE" を含む単純な円を描画し、その画像を UIImageView に表示したいと考えています。問題は、円とテキストが非常にぼやけて見えることです。サブピクセルについて少し読んだことがありますが、それは私の問題ではないと思います。

誰かがいくつかのアイデアを持っていることを願って、ここにぼやけた画像とコードがあります:)

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;

ぼやけた円

4

1 に答える 1