Я рисую график на CALayer в его методе делегата drawLayer:inContext:
.
Теперь я хочу поддерживать Retina Display, так как график выглядит размытым на последних устройствах.
Для частей, которые я рисую непосредственно в графическом контексте, переданном CALayer, я мог бы красиво рисовать в высоком разрешении, установив свойство CALayer contentScale следующим образом.
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, так и устаревший.
Спасибо,
Куры