Mój program musi generować bardzo proste raporty w formacie Office .doc
(inne niż XML), a niektóre części dokumentu muszą być pogrubione. Przeglądałem dokumentację dla defining ranges, która jest częściowo tym, co mój kod wywodzi w tej chwili. This część dokumentacji tak naprawdę nie dostarczyła mi wystarczającej ilości szczegółów, aby wdrożyć to ogólnie w moim dokumencie. Oto mój kod do tej pory:Jak programowo napisać pogrubiony tekst do dokumentu programu Word bez pogrubienia całego dokumentu?
object miss = System.Reflection.Missing.Value;
object Visible = true;
object start = 0;
Microsoft.Office.Interop.Word.Application WordApp = new Microsoft.Office.Interop.Word.Application();
Document report = WordApp.Documents.Add(ref miss, ref miss, ref miss, ref miss);
String header = "Bold Header: ";
Range headerRange = report.Range(ref start, ref miss);
headerRange.Text = header;
headerRange.Font.Bold = -1;
String data = "Information underneath the header";
Range dataRange = report.Range();
dataRange.Text = data;
dataRange.Font.Bold = 1;
object filename = "test.doc";
report.SaveAs(ref filename, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss, ref miss);
object saveChanges = Microsoft.Office.Interop.Word.WdSaveOptions.wdPromptToSaveChanges;
object originalFormat = Microsoft.Office.Interop.Word.WdOriginalFormat.wdWordDocument;
object routeDocument = true;
WordApp.Visible = true;
ta produkuje dokument słowo tylko z tekstem **Information underneath the header**
. To prosty przykład.
Mój dokument nie będzie o wiele bardziej skomplikowany, ale mam nadzieję, że uda mi się wygenerować dokumenty Word w oparciu o różne ilości danych, pogrubioną czcionką i rozproszonym tekstem.
Myślę, że chcesz tego: http://msdn.microsoft.com/en-us/library/aa192495%28v=office.11%29.aspx#wordobject_link7 Jest to obiekt 'Selection', a nie zakres. –
Czy jest jeszcze jakaś inna dokumentacja lub przykłady na ten temat (http://msdn.microsoft.com/en-us/library/6b9478cs%28v=vs.80%29.aspx)? Po raz kolejny przykłady z nich nie są wcale takie wspaniałe. –