Как нарисовать текст на изображении - PullRequest
1 голос
/ 08 декабря 2010

у меня есть изображение. на этом изображении мне нужно нарисовать текст.

Пожалуйста, предоставьте любые ссылки или пример кода, чтобы попробовать его.

Спасибо за любую помощь

1 Ответ

3 голосов
/ 08 декабря 2010

Просто создайте дополнительный вид, содержащий текст поверх изображения. Если вы используете UILabel с [UIColor clearColor] для цвета фона и установите для opaque значение false, вы просто увидите текст в верхней части изображения, и ни одно из изображений не будет скрыто.

Если вы хотите получить изображение из изображения в виде с прозрачным видом, содержащим текст поверх него, посмотрите этот ответ:

Как получить CGImageRef из содержимого UIView?

Примерно так:

    UIView* baseView = [[UIView alloc] initWithFrame:frameSize];

    UIImage* imageToCaption = [UIImage imageNamed:@"myImage.jpg"];
    UIImageView* imageToCaptionView = [[UIImageView alloc] initWithImage:imageToCaption];
    imageToCaptionView.frame = frameSize;
    [baseView addSubview:imageToCaptionView];
    [imageToCaptionView release];


    // do stuff with fonts to calculate the size of the label, center it in your image etc. etc.
    CGRect labelFrame = ...

    UILabel* myLabel = [[UILabel alloc] initWithFrame:labelFrame];
    myLabel.backgroundColor = [UIColor clearColor];
    myLabel.opaque = NO;

    // set the color, font, text etc.

    [baseView addSubView:myLabel];
    [myLabel release];

Не скомпилировано или завершено, но вы поняли идею. Если вы хотите получить результат в виде изображения, используйте do [baseView.layer renderInContext:context];

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...