Текстовый рисунок CGContext не увеличивается на iPhone 4

Я пытаюсь создать приложение, которое увеличивается приятно на iPhone 4. В настоящее время большая часть из него увеличивается отлично, за исключением одной решающей части: текст, который я рисую в CALayer в его drawInContext: метод. Вот мой код:

- (void)drawInContext:(CGContextRef)context {
    UIGraphicsPushContext(context);

    CGContextSetGrayFillColor(context, 1.0f, 1.0f);
    CGContextFillRect(context, self.bounds);

    CGContextSetAllowsAntialiasing(context, true);
    CGContextSetShouldAntialias(context, true);

    CGContextSetAllowsFontSmoothing(context, true);
    CGContextSetShouldSmoothFonts(context, true);

    CGContextSetAllowsFontSubpixelQuantization(context, true);
    CGContextSetShouldSubpixelQuantizeFonts(context, true);

    CGContextTranslateCTM(context, 0.0f, self.frame.size.height);
    CGContextScaleCTM(context, 1.0f, -1.0f);

    CGContextSetFillColorWithColor(context, [[UIColor blackColor] CGColor]);
    CGContextSelectFont(context, "CardKit", 30.0f, kCGEncodingMacRoman);
    CGContextSetTextDrawingMode(context, kCGTextFill);
    CGContextShowText(context, "A", sizeof("A"));

    UIGraphicsPopContext();
}

Это короткий текст хрустящего картофеля продукта на обоих устройствах, но к сожалению, это производит расплывчатый текст на обоих. Вот то, как это появляется:

ужасный текст http://files.droplr.com.s3.amazonaws.com/files/16285043/1gBp61.Screen%20shot%202010-06-26%20at%2021:25:09.png

То изображение взято при 100%-м масштабировании на iPhone 4. Что в мире? Какие-либо идеи, как я могу зафиксировать это?

9
задан Carter Allen 27 June 2010 в 03:27
поделиться

1 ответ

Поскольку вы имеете дело с CALayers, вам нужно установить свойство contentsScale вашего слоя на 2.0.

См. этот раздел в руководстве по программированию приложений iPhone для iOS 4.

2
ответ дан 4 December 2019 в 07:13
поделиться