gpt4 book ai didi

ios - 设置绘制到图像时文本的描边宽度

转载 作者:行者123 更新时间:2023-11-29 04:17:26 24 4
gpt4 key购买 nike

我找到了一个从文本创建图像的函数,其中包含文本颜色、描边颜色和描边宽度我可以使用 CGContextSetRGBFillColor 和 CGContextSetRGBStrokeColor 设置文本颜色和描边颜色,但我不知道如何设置文本描边的宽度。请帮我解决这个问题。这是我的示例代码,感谢您的帮助。

-(UIImage *)imageFromText:(NSString *)text withFont: (NSString *)fontName{
// set the font type and size
UIFont *font = [UIFont fontWithName:fontName size:100];
CGSize size = [text sizeWithFont:font];
CGSize newSize = CGSizeMake(size.width+30, size.height+20);
// check if UIGraphicsBeginImageContextWithOptions is available (iOS is 4.0+)
if (UIGraphicsBeginImageContextWithOptions != NULL)
UIGraphicsBeginImageContextWithOptions(newSize,NO,0.0);
else
// iOS is < 4.0
UIGraphicsBeginImageContext(newSize);
CGContextRef ctx = UIGraphicsGetCurrentContext();
CGContextSetCharacterSpacing(ctx, 10);
CGContextSetTextDrawingMode (ctx, kCGTextFillStroke);
CGContextSetRGBFillColor (ctx, 0.1, 0.2, 0.3, 1); // 6
CGContextSetRGBStrokeColor (ctx, 0.2, 0.8, 0.6, 1);

// draw in context, you can use also drawInRect:withFont:
[text drawAtPoint:CGPointMake(15.0, 10.0) withFont:font];

// transfer image
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

return image;

}

最佳答案

这可能对你有帮助。

NSString *str= @"YOUR String";
UIFont *font = [UIFont systemFontOfSize:16.0];
CGSize stringSize = [textToDraw sizeWithFont:font constrainedToSize:CGSizeMake(301, 10000) lineBreakMode:UILineBreakModeWordWrap];
CGRect Rect = CGRectMake(0, 0, stringSize.width , stringSize.height);
[str drawInRect:Rect withFont:[UIFont systemFontOfSize:16] lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentCenter];

关于ios - 设置绘制到图像时文本的描边宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13490656/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com