Я работаю над инструментом для захвата приложений MS Word, в котором мы фиксируем выделенное содержимое несколькими нажатиями клавиш.Все сделано.Теперь в выбранном диапазоне я хотел бы захватить текст в виде HTML, например
Text = Hello There.Как являются вы ?
Я сделал вышеупомянутый запрос по приведенному ниже примеру кода
string str = string.Empty;
Word.Range rngFindBold =
((Word.DocumentClass)(wh.Document)).ActiveWindow.Selection.Range;
rngFindBold.Find.Font.Bold = -1;
foreach (Word.Range rngWord in rngFindBold.Words)
{
if (rngWord.Bold != 0)
{
// rngWord.Bold = 0;
//rngWord.Text = "<b>" + rngWord.Text + "</b>";
str += "<b>" + rngWord.Text + "</b>";
}
else if (rngWord.Italic != 0)
{
// rngWord.Italic = 0;
// rngWord.Text = "<i>" + rngWord.Text + "</i>";
str += "<i>" + rngWord.Text + "</i>";
}
else if (rngWord.Underline != 0)
{
// rngWord.Underline = 0;
// rngWord.Text = "<u>" + rngWord.Text + "</u>";
str += "<u>" + rngWord.Text + "</u>";
}
else
{
str += rngWord.Text;
}
}
Результат = Hello <b>There</b><b>. </b><b>How </b>are <i>you </i><i>?</i>
Выше кодазанимает больше времени при выборе многострочного контента
Как я могу оптимизировать приведенный выше код?