首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python Docx - Sections -页面方向

Python Docx - Sections -页面方向
EN

Stack Overflow用户
提问于 2015-08-08 21:21:27
回答 2查看 9.5K关注 0票数 7

以下代码尝试使用landscape方向,但文档是以potrait.格式创建的

你能建议一下问题出在哪里吗?

代码语言:javascript
复制
from docx import Document
from docx.enum.section import WD_ORIENT

document = Document()

section = document.sections[-1]
section.orientation = WD_ORIENT.LANDSCAPE

document.add_heading('text')
document.save('demo.docx')

当我将代码读回为XML时

代码语言:javascript
复制
<w:document>
    <w:body>
       <w:p>
          <w:pPr>
             <w:pStyle w:val="Heading1"/>
          </w:pPr>
          <w:r>
              <w:t>TEXT</w:t>
          </w:r>
       </w:p>
       <w:sectPr w:rsidR="00FC693F" w:rsidRPr="0006063C" w:rsidSect="00034616">
           <w:pgSz w:w="12240" w:h="15840" w:orient="landscape"/>
           <w:pgMar w:top="1440" w:right="1800" w:bottom="1440" w:left="1800" w:header="720" w:footer="720" w:gutter="0"/>
           <w:cols w:space="720"/>
           <w:docGrid w:linePitch="360"/>
        </w:sectPr>
    </w:body>
 </w:document>

我不太了解XML,因为我假设部分标记应该在顶部的文本标记之上,而不是底部?

EN

回答 2

Stack Overflow用户

发布于 2016-06-07 21:43:12

虽然页面被正确标记为横向,但其尺寸保持不变,必须手动更改。

http://python-docx.readthedocs.io/en/latest/user/sections.html

页面尺寸和方向

Section上的三个属性描述了页面尺寸和方向。例如,将这些组合在一起可以用来将截面的方向从纵向更改为横向:

..。

new_width, new_height = section.page_height, section.page_width section.orientation = WD_ORIENT.LANDSCAPE section.page_width = new_width section.page_height = new_height

票数 15
EN

Stack Overflow用户

发布于 2018-10-17 18:35:13

我做了一个函数,可以很容易地从横向更改为纵向,反之亦然:

代码语言:javascript
复制
def change_orientation():
    current_section = document.sections[-1]
    new_width, new_height = current_section.page_height, current_section.page_width
    new_section = document.add_section(WD_SECTION.NEW_PAGE)
    new_section.orientation = WD_ORIENT.LANDSCAPE
    new_section.page_width = new_width
    new_section.page_height = new_height

    return new_section

然后只要你想用它就行了:

代码语言:javascript
复制
change_orientation()
document.add_picture(ax1)
change_orientation()
document.add_picture(ax2)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31893557

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档