Python 为什么z3c.RML忽略<;模板>;

Python 为什么z3c.RML忽略<;模板>;,python,reportlab,rml,Python,Reportlab,Rml,我正在尝试获取A4横向输出文件。我正在修改的文档是A4纵向的,所以我想简单地切换:pageSize=“(21cm,29.7cm)”到pageSize=“(29.7cm,21cm)”,但什么都没有发生 然后我创建了一个属性:rotation=“90”。屏幕上的页面仍然是A4纸的肖像,但内容却翻了90度。在纸上可以,但在屏幕上我得把头转90度,不太舒服 在此之后,我尝试:pageSize=“(10cm,10cm)”,认为这看起来很糟糕,但没有任何改变 生成的PDF文件的大小是否可能是在Python代

我正在尝试获取A4横向输出文件。我正在修改的文档是A4纵向的,所以我想简单地切换:pageSize=“(21cm,29.7cm)”pageSize=“(29.7cm,21cm)”,但什么都没有发生

然后我创建了一个属性:rotation=“90”。屏幕上的页面仍然是A4纸的肖像,但内容却翻了90度。在纸上可以,但在屏幕上我得把头转90度,不太舒服

在此之后,我尝试:pageSize=“(10cm,10cm)”,认为这看起来很糟糕,但没有任何改变

生成的PDF文件的大小是否可能是在Python代码中设置的,而不是由RML文件设置的

这是Python代码:

#!venv/bin/python
# -*- coding: utf-8 -*-
from z3c.rml import pagetemplate
rmlPageTemplate = pagetemplate.RMLPageTemplateFile("test.rml")
open('test.pdf', 'wb').write(rmlPageTemplate())
我的RML文件锁定如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE document SYSTEM "rml_1_0.dtd">
<document test.pdf">
    <docinit>
        ...
    </docinit>
    <template   pageSize="(10cm, 10cm)"
                rotation="90"
                leftMargin="2.5cm"
                rightMargin="2.5cm"
                topMargin="2.5cm"
                bottomMargin="2.5cm"
                showBoundary="1"
                >
        <pageTemplate id="main">
            <frame id="first" x1="2.5cm" y1="2.5cm" width="24.7cm" height="16cm" showBoundary="1"/>
        </pageTemplate>
    </template>
    <stylesheet>
        ...
    </stylesheet>
    <story>
        ...
    </story>
</document>

RML2PDF和z3c.rml实现差异

本文档概述了ReportLab Inc.的RML2PDF库和z3c.rml之间的差异

不兼容

pageSize:此实现中称为pageSize,以匹配API。

RML2PDF和z3c.rml实现差异

本文档概述了ReportLab Inc.的RML2PDF库和z3c.rml之间的差异

不兼容


pageSize:在这个实现中称为pageSize以匹配API。

以防有人有同样的问题并通过Google找到这个页面。在z3c.RML参考版本3.2.0中,
标记使用
pageSize
属性,而
标记使用
pageSize
属性。我也遇到了这个问题。以防万一有人有同样的问题,并通过谷歌找到了这个页面。在z3c.RML参考版本3.2.0中,
标记使用
页面大小
属性,而
标记使用
页面大小
属性。我也遇到了这个问题。