Как отобразить HTML письмо со встроенными изображениями (cid)? - PullRequest
6 голосов
/ 06 июля 2011

Я храню электронные письма и их вложения в базе данных.Я использую WPF WebBrowser и метод NavigateToString для отображения html тела писем.Это работает, но когда в письмах используются встроенные изображения с идентификатором содержимого (cid), я не могу их отобразить.Я сохранил все встроенные изображения как вложения, когда я сохраняю электронные письма в базе данных.Я мог бы создавать и хранить изображения во временных файлах текущего пользователя и заменять ссылки на cid абсолютным путем на диске пользователя, но я думаю, что это не лучший способ ...

У вас есть идеи?

1 Ответ

16 голосов
/ 07 июля 2011

Я наконец нашел хороший способ:

Я заменил ссылки на cid всех изображений на данные изображений base64 (RFC 2557) следующим образом:

<img src="data:image/png;base64,RAAAtuhhx4dbgYKAAA7...more data....." alt="test">

Вы можете использовать следующий коддля генерации строки base64:

string base64Str = Convert.ToBase64String(File.ReadAllBytes(@"C:\Temp\test.png"));

Примечания: не работает с IE6

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...