python,pythondocx文档说明

  python,pythondocx文档说明

  一般在WORD软件中,要先将光标移动到页面上,然后点击页面布局菜单的页面设置功能区进行设置,或者在页面设置属性框中进行设置,如下图所示。在Python-docx包中,需要使用section对象中的page_height、page_width、orientation、top_margin等属性来设置页面大小、纸张、方向、页边距和装订线。笔者将详细描述python-docx包中docx文档页面设置功能的实现,最后做一个思维导图。

  WORD软件中的页面设置

  01页面尺寸

  在python-docx包中,需要使用section.page_width和section.page_height的属性来读取和设置页面大小。本文因为要设置长度,所以要导入docx.shared. Cm等单位转换函数。例如:

  从docx导入文档#从docx.shared导入docx包Cm,Inches,Pt #导入单位转换函数document=Document() #新建word文档section=document.sections[0] #获取section对象print(默认页面宽度和高度:,section.page_width.cm,Section.page_height.cm) #打印默认页面宽度和高度section . page _ width=Cm(40)section . page _ height=Cm(40)print(修改页面的宽度和高度:,section.page_width.cm,section结果如下

  页面尺寸修改前后的结果

  修改后的效果见下图。

  页面尺寸修改效果图

  默认纸张大小与WORD软件中内置的信纸纸张大小相同。通过修改section.page_width和section.page_height属性的值,将页面大小调整为40厘米高和40厘米宽。此时,页面纸张尺寸类型为自定义尺寸。

  02背景纸

  Word软件内置了很多论文参数。然后,作者将以设置A4纸的形式演示如何使用python-docx设置纸张,如下面的代码所示:

  Section.page_width=Cm(21) #设置A4纸的宽度section.page_height=Cm(29.7) #设置A4纸的高度。文件运行后的效果见下图:

  设置A4纸效果图

  只要根据A4纸的宽度和高度设置section.page_width和section.page_height属性,WORD软件就会自动识别为A4纸。WROD软件内置了很多介质纸张参数,可以通过“页面布局”菜单中“页面设置”功能区的“纸张尺寸”进行查询,如下图所示:

  纸张参数内置在WORD软件中。

  03设置纸张方向

  在Python-docx包中,section.orientation属性可以设置纸张方向,它使用docx . enum . section . wd _ orientation中枚举类型的常量。WD_ORIENTATION有两个常量,其含义如下:

  WD _定向。风景:纸张方向为风景。WD _定向。纵向:纸张方向为纵向。Word文档默认设置为纵向。如果在python-docx包中只设置了orientation属性,则页面不会改变其方向。因为设置orientation属性不会更改section.page_width和section.page_height属性的值,所以页面不会更改。下面的代码演示了如何将纸张从纵向设置为横向:

  从docx.enum.section导入wd _ orientation section . orientation=wd _ orientation . landscape # A4旋转page _ h,page _ w=section.page _ width不会出现,section . page _ height section . page _ width=page _ w #设置横向A4纸的宽度。section.page_height=page_h #设置水平A4纸的高度。更改页面方向的效果如下:

  纸张访问是一种景观渲染。

  更改为横向纸张大小的地图。

  文档的纸张方向已成功更改为横向,纸张仍然是A4。由于改变后的纸张方向只能通过修改纸张的section.page_width和section.page_height属性来显示,那么只设置section.page_width和section.page_height属性而不设置orientation属性是否也能起到改变纸张方向的作用?代码修改如下:

  Page _ h,page _ w=section。page _ width,节。page _ height #提取页面的高度和宽度。section.page_width=page_w #设置A4纸的宽度,section.page_height=page_h #设置A4纸的高度只是为了改变纸张的宽度和高度。效果图如下

  只改变页面大小。

  此时,文档实际上被更改为横向。此时,纸张方向仍为纵向,但纸张尺寸为“A4旋转”。从效果上看,只设置section.page_width和section.page_height属性也可以改变纸张方向。

  04设置页边距

  在python-docx包中设置边距需要四个属性:section.top_margin、section.bottom_margin、section.left_margin和section.right_margin。意思如下:

  Section.top_margin:上边距section.bottom_margin:下边距section.left_margin:左边距section.right_margin:右边距可以通过简单地读取或更改这四个属性的值来读取和设置。代码如下:

  Print(页面上边距:,section.top_margin.cm)print(页面下边距:,section.bottom_margin.cm)print(页面左边距:,section.left_margin.cm)print(页面右边距:,Section.right_margin.cm)#修订部分。top _ margin=cm (5) section。bottom _ margin=cm (5) section。left _ margin=cm (4) section。right _ margin=cm (4)页边距测试结果如下图

  页边距设置结果图表

  边距更改的效果如下

  边距更改后的效果图。

  在docx文档中,默认的页边距是上下2.54厘米,左右3.175厘米。更改后,上下页边距变为5cm,左右页边距变为4cm。

  05设定装订线。

  使用section.gutter属性设置装订线的位置。将装订线的位置设置为1cm。代码如下:

  print(设置装订前,section.gutter.cm)section . gutter=cm(1)print(设置装订行后:,section . gutter . cm)的运行结果如下

  绑定设置后的结果图。

  设置1cm装订线的文件效果如下

  用1cm装订线记录效果图

  页面默认装订线为0cm,设置后文档的装订线位置改为1cm。

  笔记对页面大小、纸张设置、页边距、装订线进行了汇总,做了思维导图,如下图所示。可以为想使用python-docx包进行页面设置的同行提供参考。

  Python-docx页面设置

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: