Я рисую график на CALayer в его методе делегата drawLayer: inContext:
.
Теперь я хочу поддерживать дисплей Retina, поскольку график выглядит размыто на последних устройствах.
Для частей, которые я рисую непосредственно в графическом контексте, передаваемом CALayer, я мог бы красиво рисовать с высоким разрешением, установив свойство contentScale CALayer следующим образом.
if ([myLayer respondsToSelector:@selector(setContentsScale:)]) {
myLayer.contentsScale = [[UIScreen mainScreen] scale];
}
Но для частей, которые я использование CGLayer все еще отображается размытым.
Как мне рисовать на CGLayer в высоком разрешении для поддержки Retina Display?
Я хочу использовать CGLayer для многократного рисования одних и тех же форм графика графика, а также для обрезки линии графика, выходящие за край слоя.
Я получаю CGLayer с помощью CGLayerCreateWithContex
с графическим контекстом, переданным из CALayer,и использовать его контекст, используя функции CG, такие как CGContextFillPath
или CGContextAddLineToPoint
.
Мне нужно поддерживать как iOS 4.x, так и iOS 3.1.3, как Retina, так и устаревший дисплей.
Спасибо,
Кура