本文介绍了VML的base64形象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用Outlook 2007中HTML签名签名包含一些图像文件。我想嵌入图像文件,所以它不应该在附件。但ν:图片不显示图片

 <! -  [如果GTE VML 1] GT;
    <五:影像风格=WIDTH:104px;高度:108px; SRC =数据:图像/ JPG; BASE64,/ 9J / 4AAQSkZ ...... AgEAgEAgEAgEAgP // Z>
        < / V:图像>
    百分比抑制率ENDIF] - GT!;
    <![如果VML!]>< IMG WIDTH = 104 HEIGHT = 108
src=\"data:image/jpg;base64,/9j/4AAQSkZJR...AICpUuZdbmkMBXsnT3knOxse8nkcs+B4iAtsAgEAgEAgEAgEAgEAgP//Z\" ALT =footer_logo.jpgν:形状=Resim_x0020_4>&下; ENDIF]≥!


解决方案

Outlook使用Word来渲染图像,Word不支持嵌入式(SRC =数据:图像)的图像。您需要将图像附加为一个文件,设置附件(Attachment.PropertyAccessor.SetProperty)的PR_ATTACH_CONTENT_ID财产,并确保你的HTML通过SRC = CID指的是图像:XYZ属性(其中xyz是值了PR_ATTACH_CONTENT_ID属性)。

PR_ATTACH_CONTENT_ID财产DASL名字是

I use html signature for Outlook 2007. The signature contains a few image file. I want embed image files so it's shouldn't be on attachment. But v:image doesn't show image.

<!--[if gte vml 1]>
    <v:image style="width:104px;height:108px;" src="data:image/jpg;base64,/9j/4AAQSkZ......AgEAgEAgEAgEAgP//Z">
        </v:image>
    <![endif]-->
    <![if !vml]><img width=104 height=108
src="data:image/jpg;base64,/9j/4AAQSkZJR...AICpUuZdbmkMBXsnT3knOxse8nkcs+B4iAtsAgEAgEAgEAgEAgEAgP//Z" alt="footer_logo.jpg" v:shapes="Resim_x0020_4"><![endif]>
解决方案

Outlook uses Word to render the images, and Word does not support embedded (src="data:image") images. You need to attach the image as a file, set the PR_ATTACH_CONTENT_ID property on the attachment (Attachment.PropertyAccessor.SetProperty), and make sure your HTML refers to the image through the src=cid:xyz attribute (where xyz is the value of the PR_ATTACH_CONTENT_ID property).

PR_ATTACH_CONTENT_ID property DASL name is http://schemas.microsoft.com/mapi/proptag/0x3712001F

这篇关于VML的base64形象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-27 21:52