Objective C, base64 png转UIImage

Objective C, base64 png to UIImage

我正在尝试将数据:image/png;base64 转换为 UIImage,然后从 UIImage 获取 CGImage 并将其发送到 Zebra 打印机。

我试试这个代码:

NSData *datad = [[NSData alloc] initWithData:[NSData dataFromBase64String:@"data:image/png;base64,iVBORw0KGgoAAAANS...etc"]];
UIImage *image = [UIImage imageWithData:datad];
[image CGIamge]

我正在尝试使用此代码:

NSString *base64Url = @"data:image/png;base64,iVBORw0KGgoAAAANS...etc";
NSURL *url = [NSURL URLWithString:base64Url];
NSString *base64Image = [NSString stringWithContentsOfURL:url];
url = [NSURL URLWithString:base64Image];
NSData *rawImageData = [NSData dataWithContentsOfURL:url];
UIImage *image = [UIImage imageWithData:rawImageData];

通过代码的第二部分,我得到了一张黑色图像。

我肯定做错了。

我也在尝试做这个How to create CGImageRef from NSData string data (NOT UIImage)

aaaa什么都没有。

拜托,如果有人能帮助我,你就是我的英雄!

你应该试试这个:

NSData *data = [[NSData alloc]initWithBase64EncodedString:strEncodeData options:NSDataBase64DecodingIgnoreUnknownCharacters];
UIImage *image = [UIImage imageWithData:data];

您必须删除 data:image/png;base64, 前缀,并且在您调用 dataFromBase64String.[=13= 时只包含实际的 base64 负载(包括末尾的任何 = 个字符) ]