#下面是必备的
#注意!所有方法后面都要加括号()!!! import win32com from win32com.client import Dispatch,constants w = win32com.client.Dispatch('Word.Application') w.Visible = 0 w.DisplayAlerts = 0 doc = w.Documents.Open(FileName = r'C:\Users\jack\Desktop\test\课文.rtf') #这里写操作word的代码 par = doc.Range(doc.Content.Start,doc.Content.End) #选取全文
doc.Paragraphs(1).Range.Delete() #删除一段
w.ActiveDocument.Select() #活动文档全选!select加括号!
w.Selection.ClearFormatting() #清除所有格式,包括文字和段落,如字体、首行缩进等
par.ParagraphFormat.Reset() #只取消段落格式,如首行缩进
par.Font.Name = "微软雅黑" #设置字体
par.Font.Size = "14" #设置字号,12是小四,14是四号,15小三,16三号,18小二,21二号,24小一,28一号,36小初号,42初号
par1 = doc.Paragraphs(1).Range #选取第一段
par2 = doc.Paragraphs(2).Range #选取第二段
par1.Font.Size = "36" #设置字体为小初号
par2.Font.Size = "24" #设置字体为小一
par1.ParagraphFormat.Alignment = 1 #居中对齐
par2.ParagraphFormat.Alignment = 1 #居中对齐
#下面是结束了
doc.Close()
w.Quit
利用Python操作Word文档
office 2007中不能直接打开VB编辑器,请按Alt + F11打开。 import win32com.client # 导入脚本模块 WordApp = win32com.client.Dispatch("Word.Application") # 载入WORD模块 WordApp.Visible = True # 显示Word应用程序 1、 新建Word文档 doc = WordApp.Documents.Add() # 新建空文件 doc = WordApp.Documents.Open(r"d:\2011专业考试计划.doc") # 打开指定文档 doc.SaveAs(r"d:\2011专业考试计划.doc") # 文档保存 doc.Close(-1) # 保存后关闭,doc.Close()或doc.Close(0)直接关闭不保存 2、 页面设置 doc.PageSetup.PaperSize = 7 # 纸张大小, A3=6, A4=7 doc.PageSetup.PageWidth = 21*28.35 # 直接设置纸张大小, 使用该设置后PaperSize设置取消 doc.PageSetup.PageHeight = 29.7*28.35 # 直接设置纸张大小 doc.PageSetup.Orientation = 1 # 页面方向, 竖直=0, 水平=1 doc.PageSetup.TopMargin = 3*28.35 # 页边距上=3cm,1cm=28.35pt doc.PageSetup.BottomMargin = 3*28.35 # 页边距下=3cm doc.PageSetup.LeftMargin = 2.5*28.35 # 页边距左=2.5cm doc.PageSetup.RightMargin = 2.5*28.35 # 页边距右=2.5cm doc.PageSetup.TextColumns.SetCount(2) # 设置页面分栏=2 3、 格式设置 sel = WordApp.Selection # 获取Selection对象 sel.InsertBreak(8) # 插入分栏符=8, 分页符=7 sel.Font.Name = "黑体" # 字体 sel.Font.Size = 24 # 字大 sel.Font.Bold = True # 粗体 sel.Font.Italic = True # 斜体 sel.Font.Underline = True # 下划线 sel.ParagraphFormat.LineSpacing = 2*12 # 设置行距,1行=12磅 sel.ParagraphFormat.Alignment = 1 # 段落对齐,0=左对齐,1=居中,2=右对齐 sel.TypeText("XXXX") # 插入文字 sel.TypeParagraph() # 插入空行 注:ParagraphFormat属性必须使用TypeParagraph()之后才能二次生效! 4、 插入图片 pic = sel.InlineShapes.AddPicture(jpgPathName) # 插入图片,缺省嵌入型 pic.WrapFormat.Type = 0 # 修改文字环绕方式:0=四周型,1=紧密型,3=文字上方,5=文字下方 pic.Borders.OutsideLineStyle = 1 # 设置图片4边线,1=实线 pic.Borders.OutsideLineWidth = 8 # 设置边线宽度,对应对话框中数值依次2,4,6,8,12,18,24,36,48 pic.Borders(-1).LineStyle = 1 # -1=上边线,-2=左边线,-3下边线,-4=右边线 pic.Borders(-1).LineWidth = 8 # 依次2,4,6,8,12,18,24,36,48 注:InlineShapes方式插入图片类似于插入字符(嵌入式),Shapes插入图片缺省是浮动的。 5、 插入表格 tab = doc.Tables.Add(sel.Range, 16, 2) # 增加一个16行2列的表格
tab.Style = "网格型" # 显示表格边框 tab.Columns(1).SetWidth(5*28.35, 0) # 调整第1列宽度, 1cm=28.35pt tab.Columns(2).SetWidth(9*28.35, 0) # 调整第2列宽度 tab.Rows.Alignment = 1 # 表格对齐,0=左对齐,1=居中,2=右对齐 tab.Cell(1,1).Range.Text = "xxx" # 填充内容,注意Excel中使用 wSheet.Cells(i,j) sel.MoveDown(5, 16) # 向下移动2行,5=以行为单位 注:插入n行表格之后必须使用MoveDown(5,n)移动到表格之后才能进行其它操作,否则报错! 6、 使用样式 for stl in doc.Styles: print stl.NameLocal # 显示文档中所有样式名称 (未完待续……)