Я пытаюсь создать надстройку Outlook, которая будет брать содержимое открытого в данный момент электронного письма и сохранять его как текстовый документ. Перед сохранением необходимо отрегулировать размеры изображений, таблиц и т. Д., Чтобы они соответствовали ширине страницы.
Я борюсь с частью изменения размера.
После получения содержимого электронного письма в виде объекта текстового документа ...
var ispector = e.Control.Context as Inspector;
var mailItem = ispector.CurrentItem as MailItem;
var document = ispector.WordEditor as Microsoft.Office.Interop.Word.Document;
... и получение доступной ширины
float availableWidth = document.PageSetup.PageWidth - document.PageSetup.LeftMargin - document.PageSetup.RightMargin;
... Я перебираю фигуры, встроенные фигуры и таблицы, чтобы отрегулировать ширину.
foreach (InlineShape item in document.InlineShapes)
{
if (item.Width > availableWidth)
item.Width = availableWidth;
}
foreach (Microsoft.Office.Interop.Word.Table table in document.Tables)
{
table.AllowAutoFit = true;
table.AutoFitBehavior(Microsoft.Office.Interop.Word.WdAutoFitBehavior.wdAutoFitContent);
}
Но что бы я ни делал, размеры изображений в сохраненном документе не меняются.
Я даже попытался вызвать метод Delete для каждой формы / inlineshape, но в сохраненном документе все равно ничего не изменилось.
Любые идеи ?
1 ответ
Сначала сохраните электронное письмо как документ Word. Откройте это и примените форматирование к изображениям.
Похожие вопросы
Новые вопросы
c#
C # (произносится как «резкий») - это высокоуровневый, статически типизированный язык программирования с несколькими парадигмами, разработанный Microsoft. Код C # обычно нацелен на семейство инструментов и сред выполнения Microsoft .NET, включая, среди прочего, .NET Framework, .NET Core и Xamarin. Используйте этот тег для вопросов о коде, написанном на C # или в формальной спецификации C #.