//添加页码到页脚
Document doc = Globals.ThisAddIn.Application.ActiveDocument;
HeaderFooter hprimary= doc.Sections[1].Footers[WdHeaderFooterIndex.wdHeaderFooterPrimary];
hprimary.Range.Fields.Add(hprimary.Range, WdFieldType.wdFieldPage);
//添加页脚并显示页码
Document doc = Globals.ThisAddIn.Application.ActiveDocument;
Window activeWindow = doc.Application.ActiveWindow;
object currentPage = WdFieldType.wdFieldPage;
object totalPages = WdFieldType.wdFieldNumPages;
// Go to the Footer view
activeWindow.ActivePane.View.SeekView = WdSeekView.wdSeekCurrentPageFooter;
// Right-align the current selection
activeWindow.ActivePane.Selection.Paragraphs.Alignment =
WdParagraphAlignment.wdAlignParagraphCenter;
// Type the page number in 'Page X of Y' format
activeWindow.Selection.TypeText("第 ");
activeWindow.Selection.Fields.Add(
activeWindow.Selection.Range, ref currentPage);
activeWindow.Selection.TypeText("页,共 ");
activeWindow.Selection.Fields.Add(
activeWindow.Selection.Range, ref totalPages);
activeWindow.Selection.TypeText("页 ");
//清除页眉横线(不知道为什么页眉会多一条横线)
doc.Sections[1].Headers[WdHeaderFooterIndex.wdHeaderFooterPrimary].Range.Borders[WdBorderType.wdBorderBottom].LineStyle =WdLineStyle.wdLineStyleNone;
// Go back to the Main Document view
activeWindow.ActivePane.View.SeekView = WdSeekView.wdSeekMainDocument;
//页面配置
PageSetup PAGE = doc.PageSetup;
PAGE.PaperSize = WdPaperSize.wdPaperA3; //A3纸
PAGE.Orientation = WdOrientation.wdOrientLandscape; //横向
PAGE.TextColumns.SetCount(3); //分3栏
//定位选中内容的下一行进行操作
Selection sel = Globals.ThisAddIn.Application.Selection; //获取选中内容
sel.InsertParagraph(); //插入新的段落行
Range range = sel.GoToNext(WdGoToItem.wdGoToLine); //定位到新的段落行
range.Text="当前行下一行进行编辑";
//获取指定区域中的文本、图片、图形
Document doc = Globals.ThisAddIn.Application.ActiveDocument;
Range r = doc.Range();
Range range = doc.Range(r.Bookmarks["bookmark1"].Start, r.Bookmarks["bookmark2"].Start);
string text = range.Text; //获取指定区域中的文本内容
//int c = Globals.ThisAddIn.Application.ActiveDocument.Shapes.Count;
Shape s = Globals.ThisAddIn.Application.ActiveDocument.Shapes[1]; //获取当前文档中第一个图形对象
InlineShape igs = Globals.ThisAddIn.Application.ActiveDocument.InlineShapes[1]; //获取当前文档中第一个图片对象
InlineShape idfs= range.InlineShapes[1]; //获取指定区域中第一个图片对象
idfs.Range.Select();
Shape sr = range.ShapeRange[1]; //获取指定区域中第一个图形对象
internal void GetImagesInDocument()
{
// iterate through each shape
foreach (InlineShape ils in Globals.ThisAddIn.Application.ActiveDocument.InlineShapes)
{
// validate
if (ils != null)
{
// check if image
if (ils.Type == Microsoft.Office.Interop.Word.WdInlineShapeType.wdInlineShapePicture)
{
// you can do what you want with the object here
ils.ScaleHeight = 40;
ils.ScaleWidth = 40;
}
}
}
}
//Table的相关操作
Table t=range.Tables.Add(range,2,2);
t.Borders.OutsideLineStyle = Word.WdLineStyle.wdLineStyleThickThinLargeGap; ////设置Table的外边框线格式
t.Borders.InsideLineStyle = Word.WdLineStyle.wdLineStyleSingle;
foreach (Row item in t.Rows)
{
item.Height = 32; //设置行高
Range rowRange = item.Cells [1].Range;
Table rowT = rowRange.Tables.Add(rowRange, 1, 17); //嵌套Table
rowT.Rows.Height = 24;
rowT.Columns.Width = 24; //设置列宽
rowT.Borders .OutsideLineStyle = WdLineStyle.wdLineStyleSingle;
rowT.Borders.InsideLineStyle = WdLineStyle.wdLineStyleSingle;
//rowT.Borders[WdBorderType.wdBorderTop].LineStyle = WdLineStyle.wdLineStyleSingle; //设置边框顶线
//rowT.Borders[WdBorderType.wdBorderBottom].LineStyle = WdLineStyle.wdLineStyleSingle; //设置边框底线
//rowT.Borders[WdBorderType.wdBorderLeft].LineStyle = WdLineStyle.wdLineStyleSingle;
//rowT.Borders[WdBorderType.wdBorderRight].LineStyle = WdLineStyle.wdLineStyleSingle;
//rowT.Borders[WdBorderType.wdBorderVertical].LineStyle = WdLineStyle.wdLineStyleSingle; //设置边框内纵线
//rowT.Borders[WdBorderType.wdBorderHorizontal].LineStyle = WdLineStyle.wdLineStyleSingle; //设置边框内横线
item.Cells.VerticalAlignment =WdCellVerticalAlignment.wdCellAlignVerticalCenter; //设置单元格垂直居中
}
//向单元格添加文本
t.Cell(1,1).Range.Text="Test"; //下标都是从1开始
//单元格中文本格式比较复杂的可以作为段落
Paragraph pTitle = t.Cell(2, 1).Range.Paragraphs.Add(t.Cell(1, 1).Range);
pTitle.Range.Font.Size = 24;
pTitle.Range.Text = "这里是标题";
pTitle.Alignment = WdParagraphAlignment.wdAlignParagraphCenter; //设置水平居中