Обработать текст html для форматированного документа.
Обрабатывает текст HTML для помещения в форматированный документ.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
// Обрабатывает текст HTML для помещения в форматированный документ. // // Параметры: // Письмо - ДокументСсылка.ЭлектронноеПисьмоВходящее, // ДокументСсылка.ЭлектронноеПисьмоИсходящее - письмо для которого будет проведена оценка. // ТекстHTML - Строка - обрабатываемый текст HTML. // СтруктураВложений - Структура - структура в которую помещаются картинки - вложения письма. // // Возвращаемое значение: // Число - оценка размера письма в байтах. // Функция ОбработатьТекстHTMLДляФорматированногоДокумента(Письмо,ТекстHTML,СтруктураВложений) Экспорт Если Не ПустаяСтрока(ТекстHTML) Тогда ДокументHTML = ПолучитьОбъектДокументHTMLИзТекстаHTML(ТекстHTML); ТаблицаФайлов = ПолучитьВложенияПисьмаСНеПустымИД(Письмо); Если ТаблицаФайлов.Количество() Тогда Для каждого ПрисоединенныйФайл Из ТаблицаФайлов Цикл Для каждого Картинка Из ДокументHTML.Картинки Цикл АтрибутИсточникКартинки = Картинка.Атрибуты.ПолучитьИменованныйЭлемент("src"); Если СтрЧислоВхождений(АтрибутИсточникКартинки.Значение, ПрисоединенныйФайл.ИДФайлаЭлектронногоПисьма) > 0 Тогда НовыйАтрибутКартинки = АтрибутИсточникКартинки.КлонироватьУзел(Ложь); НовыйАтрибутКартинки.ТекстовоеСодержимое = ПрисоединенныйФайл.Наименование; Картинка.Атрибуты.УстановитьИменованныйЭлемент(НовыйАтрибутКартинки); СтруктураВложений.Вставить( ПрисоединенныйФайл.Наименование, Новый Картинка(ПолучитьИзВременногоХранилища( РаботаСФайлами.ДанныеФайла(ПрисоединенныйФайл.Ссылка).СсылкаНаДвоичныеДанныеФайла))); Прервать; КонецЕсли; КонецЦикла; КонецЦикла; Возврат ПолучитьТекстHTMLИзОбъектаДокументHTML(ДокументHTML); Иначе Возврат ТекстHTML; КонецЕсли; Иначе Возврат ТекстHTML; КонецЕсли; КонецФункции /////////////////////////////////////////////////////////////////////////////////////////////////////// // Copyright (c) 2019, ООО 1С-Софт // Все права защищены. Эта программа и сопроводительные материалы предоставляются // в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0) // Текст лицензии доступен по ссылке: // https://creativecommons.org/licenses/by/4.0/legalcode /////////////////////////////////////////////////////////////////////////////////////////////////////// |