使用CATiledLayer的自定义绘图会创建工件

时间:2013-05-30 13:04:17

标签: ios catiledlayer

我有一个简单的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调用更麻烦。

0 个答案:

没有答案