2012-02-04 48 views
1

我只知道我必须将图像保存在临时文件夹中,然后在Htmlviewer上使用它们。如何在Pbear Html查看器组件上显示电子邮件图像?

但假设我们有一个包含5张图片的电子邮件,所以html查看器为图片提供了5个空帧,其中一些位于文本正文的前面,其中一些位于文本正文的中间,一些位于邮件正文。现在我怎样才能定义哪个帧应该包含哪个图片! ?以及如何将它们插入到Html查看器中。

(有没有办法做到在存储流中的所有工作?我的意思是没有一个文件夹中保存图像)

回答

3

的好处是用THtmlViewer是,你并不需要保存图像事先文件。组件可以通过OnImageRequest事件在需要时向您请求图像数据。您可以从任何可用的来源提供数据。 HTML电子邮件使用cid: URL来引用电子邮件内部的资源,通常是附件。当组件要求您提供这样的URL时,您可以直接从TIdMessage获取相应的数据。 TIdMessage支持将电子邮件完全加载到内存中,根本不使用任何临时文件。您可以通过在TIdMessage.OnCreateAttachment事件中创建TIdAttachmentMemory类的实例来实现此目的。

PBear在几年前发布了THtmlViewer公开域,现在作为Google Code的开源项目维护。有几个演示可用,包括使用Indy 9的一对。你应该能够将它们更新到Indy 10,这是XE2使用的。

+0

很好的答案!非常感谢 。 – Hesi 2012-02-05 16:11:59

相关问题