4

更新

私は、iOS が生成していた base64 文字列を取得し、Web サイトを介してバイナリ ファイルにデコードしました。画像は適切にエンコードされたようです。

私の問題は、物事のレール側にあります。次のコードを使用して画像を表示していますが、壊れた画像を表示しているだけです。

<td><%= ('<img src="data:image/jpg;base64,%s">' % Base64.encode64(user.imagestring)).html_safe %></td>

JSONを介してWebサービス(Postgresqlを使用するRails)に送信するbase64文字列をエンコードしようとしています。UIImage を NSData に変換し、現在 base64 文字列に変換しています。

新しいbase64EncodedStringWithOptions方法を使用しています。長い文字列に変換されますが、私の Web サービスでは画像が壊れているように見えます。

画像を base64 コンバータ Web サイトにアップロードしたところ、わずかに異なる文字列が返されました。

問題は iOS エンコーダーにあるのでしょうか、それとも何か間違っているのでしょうか?

UIImage *image = [UIImage imageNamed:@"image.png"];
NSData *imageData = UIImagePNGRepresentation(image);
NSString *blob = [imageData base64EncodedStringWithOptions:0];
4

2 に答える 2