2015-03-02 2 views
0

Я фактически работаю над vbscript для создания подписи Outlook с использованием HTML и до сих пор настолько хорош. Однако, когда я пытаюсь добавить изображение в качестве фона в HTML, изображение не будет отображаться. Найди мой код;vbscript - изображение XHTML в таблице

'-HTML signature 
htmlFilePath = pathToCopyTo & "Signature.htm" 
Set htmlFile = objFSO.CreateTextFile(htmlFilePath, TRUE) 
htmlfile.WriteLine("<!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0Transitional//EN""""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"">") 
htmlfile.WriteLine("<html xmlns=""http://www.w3.org/1999/xhtml"" >") 
htmlfile.WriteLine("<body>") 
htmlfile.WriteLine("<div><table background=""C:\Logon\backG.jpg""><tr><td>") 
htmlfile.WriteLine("<div style="" font-size:18pt;color:'RGB(15,0,250)';font-family:'Forte';"">" & strFirstName & " " & strLastName & "</div>") 
htmlfile.WriteLine("<div style="" font-size:12pt;font-family:'Arial';"">" & strTitle & "</div>") 
htmlfile.WriteLine("<div style="" font-size:8pt;font-family:'Arial';"">" & Details & "</div>") 
htmlfile.WriteLine("</td></tr></table></div>") 

htmlfile.WriteLine("<div><table><tr><td style=""width:70%"">") 
htmlfile.WriteLine("<img src=""C:\Logon\pix.jpg"">") 
htmlfile.WriteLine("</td><td>") 
htmlfile.WriteLine("<img src=""C:\Logon\logo.jpg"">") 
htmlfile.WriteLine("</td></tr></table></div>") 

htmlfile.WriteLine("</body>") 
htmlfile.Write("</html>") 

Тот же html был создан отдельно и запущен через Internet Explorer, и он отображается правильно.

Не могу понять, почему <table background=""C:\Logon\backG.jpg""> не работает, даже если я ставлю его как атрибут body или td, изображение просто не отображается. Другие изображения отображаются правильно, только для background, который не отображается.

Любые идеи?

+0

Вы проверили другое изображение, например

например? – Rubik

+0

Да, но напрасно. однако, если я изменяю 'background' на' bg-color' и устанавливаю цвет, он работает. –

+0

Тестовый вопрос: как вы думаете, будет ли изображение с источником '' C: \ something'' работать в почтовом клиенте на принимающей стороне? – Tomalak

ответ

0

Outlook использует Word в качестве редактора электронной почты. Вы можете читать о поддерживаемых и неподдерживаемых HTML элементы, атрибуты и каскадные таблицы стилей свойства в следующих статьях в MSDN:

Вам нужно загрузить изображение на любой веб сервера или добавить его в качестве вложения. В случае скрытых вложений вам нужно использовать значение cid. Установите свойство PR_ATTACH_CONTENT_ID (DASL - http://schemas.microsoft.com/mapi/proptag/0x3712001F) в приложении с помощью Attachment.PropertyAccessor. Имейте в виду, свойство PropertyAccessor класса Attachment было добавлено в Outlook 2007.

Вы можете найти полезную ссылку How do I embed image in Outlook Message in VBA?.

Смежные вопросы