iphone - 如何在 Objective-c 中以编程方式将文本保存为图像文件?

标签 iphone objective-c image text

我想要开发一个项目,需要通过 Objective-c 将用户输入的文本保存为 .PNG 文件。我的意思是,当用户输入一些文本时,我会为用户提供选择字体类型然后保存的选项。之后文件将保存为没有背景的.PNG 文件。

我怎样才能实现这个目标。请分享您的观点。

提前致谢

最佳答案

使用此方法从文本中获取图像:

-(UIImage *)imageFromText:(NSString *)text
{
// set the font type and size
//UIFont *font = [UIFont systemFontOfSize:txtView.font];  
CGSize size  = [text sizeWithFont:txtView.font]; // label or textview

// check if UIGraphicsBeginImageContextWithOptions is available (iOS is 4.0+)
if (UIGraphicsBeginImageContextWithOptions != NULL)
    UIGraphicsBeginImageContextWithOptions(size,NO,0.0);
else
    // iOS is < 4.0 
    UIGraphicsBeginImageContext(size);

 [text drawInRect:CGRectMake(0,0,size.width,size.height) withFont:txtView.font]; 
 UIImage *testImg = UIGraphicsGetImageFromCurrentImageContext();
 UIGraphicsEndImageContext();    
 return testImg;
}

现在你可以像这样保存图像了

NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];

NSString *pngFilePath = [NSString stringWithFormat:@"%@/test.png",docDir]; // any name u want for image
NSData *data1 = [NSData dataWithData:UIImagePNGRepresentation(image)]; your image here
[data1 writeToFile:pngFilePath atomically:YES];

关于iphone - 如何在 Objective-c 中以编程方式将文本保存为图像文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11573308/

相关文章:

iphone - 如何禁用除最顶层 View 以外的所有 View 的触摸输入?

iphone - bundle 显示名称最大长度

objective-c - UIPanRecognizer 不起作用。我的观点从未重绘

objective-c - 调用电话后返回我的应用程序

android - Flutter image_picker 不适用于 PlatformException

iphone - 我们可以将Core Data类添加到iOS中的框架吗?

objective-c - 从 iPhone 向 Mac 发送消息

jquery - 重型 AJAX 应用程序中的 Firefox 特定内存增加

iphone - 在 iPhone 中使用 AVFoudation 连续捕获图像

iphone - 如何准确检查表面平整度