(Malheureusement, la méthode suivante ne fonctionne pas, mais je laisse ce post parce que l'exemple de la chaîne de conversion du chemin d'accès à l'image est vraiment utile pour d'autres cas où vous avez besoin de chemins de fichiers HTML dans votre code. Veuillez consulter mon post sur Base64Encoding pour une méthode qui fonctionne).
J'ai rencontré ce problème moi-même, et j'ai trouvé un moyen qui fonctionne. Vous pouvez faire apparaître les images en ligne en utilisant le chemin d'accès complet de l'image.
Cela demande un peu de conversion de votre part, mais utilisez les méthodes normales pour obtenir les répertoires de votre application (NSString *path = [[NSBundle mainBundle] resourcePath], etc...)
puis convertir la chaîne en une URL littérale. Par exemple, la chaîne "path" retournée ci-dessus contiendra quelque chose comme "/Users/Me/Library/Application Support/iPhone Simulator/3.2/Applications/25ADA98D-8DF4-4344-8B78-C18BC757EBDC/MyEmailingApplication.app" .
Vous devrez transformer cette chaîne en
" file:///Users//Me//Library//Application%20Support//iPhone%20 Simulator//3.2//Applications//25ADA98D-8DF4-4344-8B78-C18BC757EBDC//MyEmailingApplication.app/"
et ensuite vous pouvez ajouter vos noms de fichiers d'images à la fin. (cet exemple pointe vers les ressources de l'application, mais la même chose s'applique aux répertoires tmp et documents).
Vous pouvez effectuer cette conversion de chaîne de caractères en combinant les éléments suivants [NSString stringWithFormat:@"file:///%@//%@",path,myImageName]
après avoir utilisé [path stringByReplacingOccurencesOfString:@"/" withString:@"//"]
pour corriger les tirets avant dans "path", et
[path stringByReplacingOccurencesOfString:@" " withString:@"%20"]
pour rendre les espaces compatibles avec le HTML. Vous pouvez maintenant utiliser cette URL littérale dans le corps de votre courriel codé en HTML, comme img. src=\"",pathToMyImage,"\"
L'exemple semble demander beaucoup de travail, mais en fait, une fois que vous l'avez configuré, ce n'est pas difficile du tout, et cela fonctionne comme un charme :-) Bonne chance !