【问题标题】:Make the data from the second column stay at the second column使第二列的数据停留在第二列
【发布时间】:2019-01-15 11:26:45
【问题描述】:

我正在使用reportlab 制作一个表格,它分为两列。第二列只是第一列的副本。

我使用 Frame() 函数创建两列,并使用 Spacer() 函数将原始表单与复制的表单分隔为两列。

我的预期结果是使第二列中的数据保持不变。但是我得到的结果是,当第一列中的数据变短时,第二列开始向上移动并移动到第一列。

【问题讨论】:

    标签: python reportlab


    【解决方案1】:

    如果我的问题是正确的,那么问题是您使用间隔来控制内容在两列/框架中的视觉位置。这样,您将其视为一分为二的单个长列,同时您需要将其视为两个单独的列(两个单独的框架)。

    因此,如果您结束第一帧(在开始填充另一帧之前使用 FrameBreak() 并且仅使用分隔符来控制同一帧内的任何视觉设计,您将获得更大的控制权。

    您需要了解的工具有: FrameBreak(),搜索一下会发现很多代码示例。

    例如你用 10 行文本填充第 1 帧,然后插入一个 FramBreak() 并指示脚本开始填充第二列。

    您应该注意的另一个工具是使用的设置,例如 BaseDocTemplate:

    allowSplitting:如果设置为 1,flowables(例如,段落)可以跨框架或页面拆分。如果为 0,则强制内容进入同一帧。 (默认值:1,禁用为 0)。

    【讨论】:

    • 如果您需要一些代码示例来完成建议的答案,请告诉我
    • 太好了,很高兴我能帮上忙。请标记为答案并勾选它,以便我在统计数据上获得一些 cookie 点,谢谢
    猜你喜欢
    • 1970-01-01
    • 2021-06-30
    • 2020-06-30
    • 1970-01-01
    • 1970-01-01
    • 2018-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多