项目有个需求需要将输入的文字发送到硬件上显示。由于之前的项目采用的方法是通过字库获取文字数据发送到硬件显示即可,但这样有个不足的地方就是个别汉字无法显示,敏体字也无法显示。解决办法是将输入的文字绘制成图片,然后获取图片的像素数据发送到显示上显示即可。要实现这个需求关键有2步。
首先将汉字给制到一张bmp的透明图片上,后续方便获取汉字部份的像素数据,代码如下
-(BOOL) converOneText:(NSString *)text
bufferIn:(byte *)buffer
{
//加载图像
UIImage *sourceImage = [UIImage imageNamed:@"透明图片.bmp"];
//图像尺寸
CGSize imageSize;
imageSize = [sourceImage size];
//比例1:1
UIGraphicsBeginImageContextWithOptions(imageSize, NO, 1.0);
//绘制点
[sourceImage drawAtPoint:CGPointMake(0, 0)];
//获得 图形上下文
CGContextRef context=UIGraphicsGetCurrentContext();
CGContextSetLineWidth(context, 5.0);// 设置画笔宽度
CGContextDrawPath(context, kCGPathStroke);
CGFloat nameFont = imageSize.width;
//画 自己想要画的内容
//[UIFont fontWithName:@"TRENDS" size:nameFont]
NSMutableParagraphStyle *paragraphStyle = [[NSMu