Can't you do all that via the Microsoft.Office.Interop.Word namespace?