renderInContext:生成带有模糊文本的图像

kar*_*com 1 cocoa-touch uikit ios

我正在使用几个不同的UIImageViews和UILabels预渲染合成图像,以加快在大型桌面视图中的滚动.不幸的是,与同一视图中的其他UILabel相比,主UILabel看起来有点模糊.

黑色字母"PLoS ONE"位于UILabel中,它们看起来比"医疗"或"医学"更加模糊.标识"PLoS one"可能同样模糊不清,但它并不像清晰的文字那么明显.
整个杂志封面是分配给UIButton的单个UIImage.

PLoS ONE标签比"Medical Special"和"Medicine(Gener)"模糊不清http://karlbecker.com/screen_blurry.png

这是我用来绘制图像的代码.magazineView是一个125 x 151像素的矩形.我尝试过不同的缩放品质,但这并没有改变任何东西.它不应该,因为缩放不应该完全不同.我正在分配此图像的UIButton与magazineView的大小完全相同.

    UIGraphicsBeginImageContextWithOptions(magazineView.bounds.size, NO, 0.0);
    [magazineView.layer renderInContext:UIGraphicsGetCurrentContext()];
    [coverImage release];
    coverImage = UIGraphicsGetImageFromCurrentImageContext();
    [coverImage retain];
    UIGraphicsEndImageContext();
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它模糊?

当我开始一个图像上下文并立即渲染它时,渲染是在偶数像素上发生的,还是我需要手动设置渲染发生的位置?

Jes*_*ock 6

确保标签坐标是整数值.如果它们不是整数,它们将显得模糊.