1
我想創建一個表來儘可能短,它都不可能,即具有最小行高度可能的,而安裝在規定的尺寸規定的文本。我使用此代碼:蟒蛇,PPTX表 - 保持行的高度儘可能小
我初始化我的表:
init_table_width = prs.slide_width - Inches(0.2)
graphicframe = slide.shapes.add_table(rows = len(biosets) + 1, cols=5, left=Inches(0.1), top=Inches(.76), width=init_table_width, height=prs.slide_height - Inches(.76 + 3.2))
table = graphicframe.table
我然後填充表,並設置單元格屬性是這樣的:
for i in range(len(biosets)):
new_row = ['Bioset'+str(i+1)+': '+biosets[i], studies[i], correlation[i], common_genes[i], pvals[i]]
rownum += 1
for col_index, col_name in enumerate(new_row):
cell = table.cell(rownum, col_index)
cell.text = col_name
cell.margin_left = cell.margin_right = cell.margin_top = cell.margin_bottom = 0;
cell.text_frame.paragraphs[0].font.size = Pt(7.5)
當我打開PPT演示,表比我想要的高。我可以拖動桌子的底部並減少自動創建桌子的高度。爲什麼有額外的高度可以減少,如果我將邊距設置爲0?創建的表格的高度大於爲表格初始化的高度;當我手動拖動表格高度時,高度低於爲表格初始化的高度。這意味着它可以將我的所有內容放入我想要的尺寸的表格中。文本沒有換成幾行,這可以解釋爲什麼它從原始大小擴展。即便如此,如果我已經將單元格邊距設置爲0,爲什麼還有一些額外的高度可以拖動和減少?什麼因素促成了這一點,我該如何擺脫它?我不想硬編碼row.height,因爲我不知道什麼時候文本將換到兩行。