大きなテーブルビューでのスクロールを高速化するために、いくつかの異なる UIImageViews と UILabels を使用して合成画像を事前にレンダリングしています。残念ながら、メインの UILabel は、同じビューの他の UILabels と比べて少しぼやけて見えます。
黒い文字「PLoS ONE」は UILabel にあり、「Medical」や「Medicine」という単語よりもはるかにぼやけて見えます。「PLoS one」のロゴも同様にぼやけているのでしょうが、鮮明な文字ほど目立ちません。
雑誌の表紙全体は、UIButton に割り当てられた単一の UIImage です。
(ソース: karlbecker.com )
これは、画像を描画するために使用しているコードです。magazineView は、125 x 151 ピクセルの長方形です。さまざまなスケーリング品質を試しましたが、何も変わりませんでした。スケーリングはまったく異なるべきではないため、そうすべきではありません。この画像を割り当てている UIButton は、magazineView とまったく同じサイズです。
UIGraphicsBeginImageContextWithOptions(magazineView.bounds.size, NO, 0.0);
[magazineView.layer renderInContext:UIGraphicsGetCurrentContext()];
[coverImage release];
coverImage = UIGraphicsGetImageFromCurrentImageContext();
[coverImage retain];
UIGraphicsEndImageContext();
ぼやけている理由はありますか?
イメージ コンテキストを開始してすぐにレンダリングする場合、レンダリングは偶数ピクセルで行われますか?それとも、レンダリングが行われる場所を手動で設定する必要がありますか?