Назначение MailItem.HTMLBody делает изображения более низкого качества - PullRequest
0 голосов
/ 31 октября 2018

Я использую VBA для создания MailItem в Outlook. Подпись настроена, поэтому Дисплей обеспечивает ее видимость. Все ок. Но все, что я делаю с телом после этого, приводит к тому, что изображения в подписи растеризуются до более низкой глубины цвета или имеют неправильный размер. Даже с этим простым кодом, ничего не меняющим, подпись искажается:

    Set MailOutLook = appOutLook.CreateItem(olMailItem)
    MailOutLook.Display
    MailOutLook.HTMLBody = MailOutLook.HTMLBody

Интересно, что после присвоения HTMLBody самого себя содержимое отличается от предыдущего. Добавлены новые стили, изменены существующие (например, span.EmailStyle17 был изменен, а оригинал стал span.EmailStyle18), блок img выглядит так же, но само изображение теперь отображается с размыванием.

В конце мой вопрос: как мне вставить текст в HTMLBody, не разрушая его?

1 Ответ

0 голосов
/ 07 ноября 2018

Оказалось, что проблема с изображением была вызвана плохо определенной сигнатурой HTML (например, у img не было атрибутов высоты и ширины). Это может объяснять, почему Outlook чувствует необходимость изменить HTML, но ИМХО это не должно касаться того, что я говорю, чтобы оно отображалось.

...