我有一个简单的UIView类,它在drawRect例程中绘制了一些文本:
[mString drawInRect:theFrameRect withFont:theFont];
在常规分辨率下看起来不错,但在缩放时,它是模糊的: [图片已移除,帖子不够]
所以,我添加了一些平铺:
CATiledLayer *theLayer = (CATiledLayer *) self.layer;
theLayer.levelsOfDetailBias = 8;
theLayer.levelsOfDetail = 8;
theLayer.tileSize = CGSizeMake(1024,1024);
(加上必要的layerClass例程)
但现在文本将在缩放时绘制两次,当帧的大小大于tile的大小时: [图片已移除,帖子不够]
我不清楚解决方案。绘制文本是一种原子操作。我可以弄清楚如何根据传入的矩形来计算要绘制的文本的哪个部分......但这真的是要走的路吗?较旧的代码示例使用drawLayer,但这似乎已被iOS 5消除,并且显然比直接drawRect调用更麻烦。