2011-07-12 30 views
0

我正在使用C#编写电子邮件客户端应用程序。从字节数组中设置html img src

我想在嵌入图像的页面上显示html电子邮件。 现在,我使用一个div并将邮件bodyhtml设置为div innerhtml属性。 我在显示嵌入式图像时遇到问题。

我知道嵌入图像的一切(内容类型,名称,内容的ID,base64string或字节[]作为内容)

我使用的图像数据的URI,但不幸的是它是不是太完善,例如(即8-32KB的限制)。

我试图ihttphandler作为imagehandler,但它不是运行在简单的回传,当我设置div内部的HTML。

我不想将这些图像保存在服务器上。

任何想法或建议?

对不起,我的英文不太好。

谢谢。

+0

林在你的问题丢失。我什至不明白你的客户是什么样的(浏览器,WPF ....)? – Eduard

+0

ihttphandler是一个很好的解决方案。 ihttphandler有什么问题? –

+0

只有普通的''标签'src'指向你的服务器上的处理程序 - 客户端必须允许外部图像,没有真正的方法来避免这种情况。 –

回答

0

这样做,你需要做这样的事情:

(在你的ashx的文件)

Response.ContentType = "image/png"; 
Response.BinaryWrite(<bytes>); 
+0

我使用自定义的pop3/imap客户端。我想显示从pop3/imap服务器收到的电子邮件。我知道htmlbody和嵌入图像(content-type,name,content-id,base64string或byte []作为内容) – user829081

+0

我假设你想要在浏览器中显示电子邮件。为此,您需要使用ashx文件来返回图像。您需要设置一个RegEx来查找所有图像标签,并将其替换为您创建的ashx文件的调用。 – Shiroy

+0

你能给我们一个你的HTML样子的样本吗? – Shiroy