Имя: Пароль:
1C
1С v8
HTML в письмо
,
0 spiller26
 
12.11.15
16:45
При формировании письма в текст сообщения пытаюсь "залить" html из файла, предварительно записав Табличный документ в файл html.
Но по факту происходит преобразование html кода, т.е. различаются существенно отображения в файле и в теле сообщения, а именно в таблице тест идет с какими то отступами, хотя в файле этих отступов не наблюдается.

Кто либо сталкивался с этим и как можно это исправить?  

Процедура ОтправлениеПисьма(ТаблДок)
ИмяФайла = "D:\Temp\тд.html";
ТаблДок.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.HTML);
Сообщение = Новый ИнтернетПочтовоеСообщение;
Сообщение.Отправитель = "[email protected]";
Сообщение.Получатели.Добавить("[email protected]");
Сообщение.Тема = "Тест";
ТекстХТМЛ = Сообщение.Тексты.Добавить();
ТекстХТМЛ.ТипТекста = ТипТекстаПочтовогоСообщения.HTML;
ТекстИзФайла = Новый ЧтениеТекста(ИмяФайла);
СтрокиИзФайла = ТекстИзФайла.Прочитать();
ТекстИзФайла.Закрыть();
ТекстХТМЛ.Текст = СтрокиИзФайла;
Почта = Новый ИнтернетПочта;
Почта.Подключиться(ПрофильПочты());
Почта.Послать(Сообщение);
КонецПроцедуры

Функция ПрофильПочты() Экспорт
Профиль=Новый  ИнтернетПочтовыйПрофиль;
Профиль.АдресСервераSMTP = "eee.milo.ru";
Профиль.ВремяОжидания=30;
Профиль.ПортSMTP=25;
Возврат Профиль;
КонецФункции
1 Сергиус
 
12.11.15
16:59
(0)Создавай html шаблон непосредственно в 1с.
2 Сергиус
 
12.11.15
17:00
+(1) к примеру так:
3 Сергиус
 
12.11.15
17:03
+(2) КодHTML = "
    |<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">
    |<html>
    |<head>
    |<title>Тест HTML</title>
    |<meta http-equiv=""Content-Type"" content=""text/html;charset=utf8"" />
    |</head>
        |<body>
        |</body>
        |</html>";
ТекстХТМЛ.Текст = КодHTML;

Только возьми код из файла, который пытаешься подгрузить.
4 spiller26
 
12.11.15
17:07
(2,3) как потом пихнуть его в тело сообщения?
5 Котокот
 
12.11.15
17:08
(0) У тебя в твоем файле есть head, в котором есть style. Когда ты получаешь письмо, почтовик режет твой head, удаляет его. В итоге содержимое есть, но стили к нему не применяются. Отсюда получаются и отступы кривые, и шрифт другой.
6 Сергиус
 
12.11.15
17:09
(4)ТекстХТМЛ.ТипТекста = ТипТекстаПочтовогоСообщения.HTML;
   ТекстХТМЛ.Текст = КодHTML;

Также как ты делаешь, только добавляй уже сформированную html-строку.
7 Котокот
 
12.11.15
17:09
(1) Табличный документ при записи в html сам создает все необходимые теги, включая html, head, body.
8 Сергиус
 
12.11.15
17:12
+(7)Возможно создает не так как было изначально, добавляя что-то лишнее, или наоборот, срезая. Я обычно, когда мне надо, в коде сам формирую html.
9 Котокот
 
12.11.15
17:59
(8) Можно пробовать сохранять в разные версии html (там есть параметр для этого), замечено, что иногда это помогает.