我有来自服务器的以下文本。我需要在从设备发送到打印机之前根据结果更改字体样式。
1。 司机 Id#123445 验证
2。 司机 Id#123445 的 UNVERIFIED
如果文本有UNVERIFIED
我需要加粗未经验证的文本部分。
我目前正在关注创建图片
CGRect text10Rect = CGRectMake(DateTextRect.origin.x, CGRectGetMaxY(DateTextRect) + 40, DateTextRect.size.width, CGRectGetHeight(frame) - CGRectGetMaxY(DateTextRect) + 20 - 10);
[strokeColor setFill];
[stringFromServer drawInRect: text10Rect withFont: smallFont lineBreakMode: NSLineBreakByWordWrapping alignment: NSTextAlignmentLeft];
我在考虑检查它是否UNVERIFIED
然后应用bold
字体。但无法想出这样做的好方法。
答案 0 :(得分:0)
我最终做了以下方法。
if([stringFromServer containsString:@"UNVERIFIED"]){
stringFromServer = [firstBlock stringByReplacingOccurrencesOfString:@"UNVERIFIED" withString:@""];
CGRect text10Rect = CGRectMake(DateTextRect.origin.x, CGRectGetMaxY(DateTextRect) + 40, DateTextRect.size.width, CGRectGetHeight(frame) - CGRectGetMaxY(DateTextRect) + 20 - 10);
[strokeColor setFill];
[stringFromServer drawInRect: text10Rect withFont: smallFont lineBreakMode: NSLineBreakByWordWrapping alignment: NSTextAlignmentLeft];
CGRect text11Rect = CGRectMake(DateTextRect.origin.x, CGRectGetMaxY(DateTextRect) + 130, DateTextRect.size.width, CGRectGetHeight(frame) - CGRectGetMaxY(DateTextRect) + 20 - 10);
[strokeColor setFill];
[@"UNVERIFIED" drawInRect: text11Rect withFont: smallFontBold lineBreakMode: NSLineBreakByWordWrapping alignment: NSTextAlignmentLeft];
}else{
CGRect text10Rect = CGRectMake(DateTextRect.origin.x, CGRectGetMaxY(DateTextRect) + 40, DateTextRect.size.width, CGRectGetHeight(frame) - CGRectGetMaxY(DateTextRect) + 20 - 10);
[strokeColor setFill];
[stringFromServer drawInRect: text10Rect withFont: smallFont lineBreakMode: NSLineBreakByWordWrapping alignment: NSTextAlignmentLeft];
}