2012-03-28 13 views
0

私は、ユーザーがCore Dataグラフで写真を撮ったり保存したりすることができるアプリを作成しています。iOSのアセットパス(コアのデータからHTMLのimgタグで使用される)

アセットパスをNSURL値に変換して参照することで、SQliteデータベース内の写真を保存することができました。これにより、データベースにメモリの問題が発生するのを防ぐことができます。

私の最後の仕事は、ユーザーがきれいにレイアウトされたテーブルに写真の電子メールを送信し、写真の説明を記入することです。これは、自動的に画像が中に表示されていることのUITableViewから生成される

私はHTML形式の電子メールを生成するには、次を使用しています:。私は何をしようとしている

- (NSString *)generateHTMLBody { 

    NSString *res = @"<HTML><body><table border=""1"">\n"; 

    for (int i=0; i < [self.fetchedResultsController.fetchedObjects count]; i++) { 
     NSString *rowCount = [NSString stringWithFormat:@"%d.", i+1]; 
     NSString *tmp = (NSString *)[imageList objectAtIndex:0]; 
     NSString *imageString = [NSString stringWithFormat:@"<img src=""%@"" />",tmp]; 

     res = res = [res stringByAppendingString:@"<tr><td>"]; 
     res = res = [res stringByAppendingString:rowCount]; 
     res = res = [res stringByAppendingString:@"</td>\n"]; 
     res = res = [res stringByAppendingString:@"<td>"]; 
     res = res = [res stringByAppendingString:imageString]; 
     res = res = [res stringByAppendingString:@"</td>\n"]; 
     res = res = [res stringByAppendingString:@"<td>"]; 
     res = res = [res stringByAppendingString:tmp]; 
     res = res = [res stringByAppendingString:@"</td></tr>\n"]; 
    } 
    res = [res stringByAppendingString:@"</table></body></html>\n"]; 
    return res; 
} 

から画像を読み込むですコアデータグラフをHTML imgタグに追加します。私はvar tmpに以下のアセットを引き出します:

assets-library://asset/asset.JPG?id=2F62642E-00B3-4D85-82D2-A6A1F064F2CE&ext=JPG 

しかし、これは動作しません。これらの写真をメールにどのように読み込むのですか?

答えて

1

どのようにメールを送信していますか? MFMailComposeViewController経由ですか?私はあなたがaddAttachmentData:mimeType:fileName:経由でファイルを添付していると思っていたでしょう。それはおそらく最も簡単です。

また、そこにイメージが含まれている、きれいなhtmlボディを構築する場合は、イメージのbase64エンコーディングを実行することをお勧めします。次に、<img src="data:image/gif;base64,XXX">のようなものをhtmlに入れます。ここでXXXは画像のbase64エンコーディングです。

http://code.google.com/p/google-toolbox-for-mac/

もあります記事をここにBASE64ライブラリ、例えば約:私はこれをしたとき、私はGTMにGoogleのGTMBase64を使用してエンコード

How do I do base64 encoding on iphone-sdk?

+0

こんにちは、ロバート、ええ、私は、しかし、私は彼らが私が作成していますテーブルに入れ子にすることにしたい、電子メールを送信するためにMFMailComposeViewControllerを使用していて、電子メールに画像を添付に見ました。 – jcrowson

+0

非常に良い。それで、私は画像のbase64エンコーディングがおそらく行く方法だと思います。 – Rob

関連する問題