【pywin32总结】
#下面是必备的
#注意!所有方法后面都要加括号()!!!
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 # 显示文档中所有样式名称 (未完待续……)
【pywin32总结】的更多相关文章
- pywin32 创建一个窗口
import win32con,win32gui class MyWindow(): def __init__(self): #注册一个窗口类 wc = win32gui.WNDCLASS() wc. ...
- 在注册表中无Python3.5安装路径的情况下安装pywin32-
当安装pywin32出现Python Version 3.5 required which was not found in the registry的时候表面注册表中没有Python3.5的安装路径 ...
- windows 上执行python pywin32.exe
大家熟知的python脚本可以在linux系统上直接运行,因为linux上会安装python编译器 然而windows不会安装,如果想要别人直接运行你发布的python脚本,一种方法是在他的windo ...
- python和pywin32实现窗口查找、遍历和点击
Pywin32是一个Python库,为python提供访问Windows API的扩展,提供了齐全的windows常量.接口.线程以及COM机制等等. 1.通过类名和标题查找窗口句柄,并获得窗口位置和 ...
- Python笔记:使用pywin32处理excel文件
因为前端同事须要批量的对excel文件做特殊处理,删除指定行,故写了此脚本.同一时候配合config.ini方便不熟悉py的同事使用 #!/usr/bin/env python #-*- coding ...
- pywin32 安装错误 ImportError: DLL load failed: 不是有效的 Win32 应用程序
pywin32 安装错误 ImportError: DLL load failed: 不是有效的 Win32 应用程序. 发现是因为没有制定Pywin32的dll所致,我们在用Pywin32开发时, ...
- python安装win32api pywin32 后出现 ImportError: DLL load failed
ImportError: DLL load failed: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\x ...
- 安装python的pywin32安装不了,提示找不到py3.6-32
安装python的pywin32安装不了,提示找不到py3.6-32 首先我自己的py3.6是64位版本的,这是pywin32模块的下载地址 里面有各种版本的,首先我先下了64位的3.6版本的,结果提 ...
- pywin32模块安装
安装流程: 1.查看python版本和位数: 2.下载对应的的pywin32,下载目录任意 https://sourceforge.net/projects/pywin32/files%2Fpywin ...
- windos64位下python3.6安装pywin32的问题
~~~~今天终于算是正式接触scrapy了,测试的时候发现少装了一个pywin32的模块,然后安装了好久,中间碰到好多坑,最后总算是装好了. 首先我自己的py3.6是64位版本的,这是pywin32模 ...
随机推荐
- (转)AS3 中,Function.apply、call中第一个参数的作用;与什么时候用
http://blog.csdn.net/linjf520/article/details/8746064 大家在使用Function.apply或是call时,是否发现,第一个参数不知道怎么用,赋值 ...
- 04-树4. Root of AVL Tree (25)
04-树4. Root of AVL Tree (25) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue An A ...
- 关于CPU的运行队列与系统负载
在linux操作系统中,我们一般查看系统的cpu负载情况常用的命令可以是uptime,top,还有vmstat等这些个都是可以有的.每个工具所提供的信息各不相同, 我这里要讨论的仅说cpu部分.使用u ...
- x为正变数,求y=x^3/(x^4+4)的最大值
设z=1/y=x4+4/x3 显然,当z有最小值时,y有最大值,求得zmin,就得到了ymax 而z=x+4/x3=x/3+x/3+x/3+4/x3 根据正实数算术平均数大于等于它们的几何平均数的定理 ...
- 协议名称处理函数xxxprotoxxx()
为了方便操作,Linux提供了一组用于查询协议的值及名称的函数. xxxprotoxxx()函数: 上面的函数对文件/etc/protocols中的记录进行操作,文件中记录了协议的名称.值和别名等值, ...
- XCODE修改IOS应用的名称
原地址:http://zengwu3915.blog.163.com/blog/static/2783489720136210252843/ 首先在左侧选择你的目标组中的项目文件.在中间选择“生成”选 ...
- Java版 数字金额大写转换
需求:读入一个浮点数值,将其转化为中文金额的大写形式.如123.45,转化为:壹佰贰拾叁元肆角伍分. 以下是各种情况要完善: 1. 当金额为整数,只表示整数部分,省略小数部分,并添加“整”字.如123 ...
- npm run build:h5 报错
1.报错信息 (1)asset size limit: The following asset(s) exceed the recommended size limit (244 KiB). (2)e ...
- Java设计模式(二)-单例模式
单例模式建议保证某个对象仅仅仅仅有一个实例,当仅仅有一个对象来协调整个系统的操作时,在计算机系统中.线程池.缓存.日志对象.对话框.打印机.显卡的驱动程序对象常被设计成单例.总之,选择单例模式就是为了 ...
- Tomcat 关闭时报错
最近tomcat走普通的关闭方式无法正常关闭,会报一些Error,用的是Tomcat7,据说是Tomcat7在关闭的时候加了一些检查线程泄漏内存泄露的东西 总结起来,在我项目中有这么几个原因会导致关闭 ...