0

我正在使用 python 2.7 和 python pptx

我需要一个适合精确大小的表格,它有 2 个列它有未知的行数,每个单元格的文本长度未知。

我需要整个表格以适合某个确切位置,并且理想情况下希望每个单元格中的文本适合它应该获得的表格的确切部分,但公式(大小/行/2)

我在这里找到了如何调整每个单元格中文本的大小,但这还不够

我找到了如何使用 .width 和 .height 更改表格大小,但是当文本太长并且只是使表格变大时,这不起作用。

我怎样才能对每个单元格大小施加硬约束,以尽可能最好的方式(或最接近的解决方案)用文本填充它?

谢谢!

4

2 回答 2

1

我处理了类似的要求,这就是我处理可能行数随机的表的方式。

  1. 确定具有最大字符数的列。在我的情况下,我只有一列内容不同。
  2. 尝试粗略估计一张幻灯片上可以容纳的字符数。
  3. 想出逻辑来打破文本,如果它达到最大字符并移动到下一张幻灯片,创建一个表格并填写剩余的内容。
于 2017-05-03T07:48:45.563 回答
0

将表格的初始尺寸设置为 Varun 描述的样式中的最佳近似值,然后调用以下选项之一

table.cell(x,y).text_frame.auto_size = MSO_AUTO_SIZE.TEXT_TO_FIT_SHAPE 
table.cell(x,y).text_frame.fit_text() 

在表格中的文本框架上,让字体自行修改以适合您给它的框架。我发现这些选项有些错误,但也许你会有更好的运气!在此处阅读更多信息:https ://media.readthedocs.org/pdf/python-pptx/latest/python-pptx.pdf

于 2017-07-25T14:10:23.007 回答