2008-08-22 16 views
11

Я пытаюсь заменить текущий выбор в Word (2003/2007) некоторыми RTF строки хранится в переменной.Автоматизация Слово: Написать текст в формате RTF без прохождения через буфер обмена

Вот текущий код:

Clipboard.SetText(strRTFString, TextDataFormat.Rtf) 
oWord.ActiveDocument.ActiveWindow.Selection.PasteAndFormat(0) 

Есть ли способ сделать то же самое, не проходя через буфер обмена. Или есть способ переместить данные буфера обмена в безопасное место и восстановить его после?

ответ

14

Поместите RTF в файл вместо буфера обмена, затем вставьте из файла, например.

Selection.InsertFile FileName:="myfile.rtf", Range :="", _ ConfirmConversions:=False, Link:=False, Attachment:=False

-3

Вы можете использовать RichTextbox для преобразования RTF в текст или наоборот.

RichTextBox r = new RichTextBox(); 
r.Rtf = strRTFString; 
Console.WriteLine(r.Text); 
+0

Не будет ли это преобразовать RTF строку в виде обычного текста? – Rick 2011-06-29 17:49:37

+0

Мммн, мой ответ, похоже, не имеет никакого сходства с вопросом. Интересно, почему я даже написал это? – samjudson 2011-07-07 08:08:23

 Смежные вопросы

  • Нет связанных вопросов^_^