Как скопировать часть документа Word с использованием взаимодействия
Мне нужно идентифицировать часть документа word с помощью ключа, а затем скопировать ее в другой документ word. как я могу достичь этого через C#.net.
я попробовал следующее это результат как текст мне это нужно как документ
и абзац должен быть я идентифицирован с ключевым словом
Что я уже пробовал:
public string ReadFileContent(string path, int paraGraphNum) { int i = 0; StringBuilder sb = new StringBuilder(); Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application(); object file = path; object nullobj = System.Reflection.Missing.Value; Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open (ref file, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj); Microsoft.Office.Interop.Word.Paragraphs DocPar = doc.Paragraphs; // Count number of paragraphs in the file long parCount = DocPar.Count; // Step through the paragraphs while (i < parCount) { i++; if (i == paraGraphNum) { sb.Append(DocPar[i].Range.Text); break; } } doc.Close(ref nullobj, ref nullobj, ref nullobj); wordApp.Quit(ref nullobj, ref nullobj, ref nullobj); return (sb.ToString()); } }
Richard MacCutchan
Вы только копируете текст в StringBuilder, поэтому любая информация о шрифте или макете теряется. Вам нужно захватить все метаданные, которые управляют тем, как текст должен быть отформатирован.