【问题标题】:base64 encoding conversion issuebase64编码转换问题
【发布时间】:2013-07-29 05:53:40
【问题描述】:

这是我转换图像的代码,

CGSize newSize1=CGSizeMake(720.00, 576);
self.imageData = [PDFImageConverter convertImageToPDF:image1 withResolution:300 maxBoundsRect:CGRectMake(0, 0, 194, 154) pageSize:newSize1];
largerbtn.selected=YES;
smallerbtn.selected=NO;
CGSize newSize=CGSizeMake(194, 154);
UIGraphicsBeginImageContext(newSize);
[image1 drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
//NSData *imageData1
imageData1=UIImageJPEGRepresentation(newImage, 1.0);
//NSString *encodedString
encodedString= [Base64 encode:imageData1];//crashed when it reached here
NSLog(@"%@",encodedString);

应用程序在达到base64转换时崩溃,我的代码有什么问题。请帮我解决这个问题。

【问题讨论】:

  • 在尝试编码时检查 imageData1 是否为 nil
  • @LithuT.V 我做了,它不是零。它显示NSShadow {0, 0} color = {UIDeviceRGBColorSpace 0.5 0.5 0.5 1}
  • 你用哪个类来编码?
  • 你能提供一些解释 image1 对象的代码吗?你从哪里得到 image1.??
  • @LithuT.V im 使用 Base64.h 类进行编码

标签: iphone ios nsstring base64


【解决方案1】:
   // Use this line 
     imageData1=UIImageJPEGRepresentation(newImage, 1.0);
      NSString *encodedString = [imageData base64Encoding];

【讨论】:

  • 我对日志Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSShadow bytes]: unrecognized selector sent to instance 0x9d31780做了同样的错误
【解决方案2】:

使用

 [Base64 initialize];

使用前

[Base64 encode:imageData1].

希望对你有帮助。

【讨论】:

  • 没有仍然崩溃,它显示以下LOG Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSShadow bytes]: unrecognized selector sent to instance 0x9d31780
【解决方案3】:

你错过了 Base64 类的初始化

[Base64 initialize];

在您尝试编码之前包含此行

【讨论】:

  • 那又怎样?我没找到你
  • 是的,我收到了错误日志Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSShadow bytes]: unrecognized selector sent to instance 0x9d31780
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-13
  • 2010-10-09
  • 1970-01-01
相关资源
最近更新 更多