Как изменить размер шрифта текста в таблице, созданной Python-pptx
Я создаю скрипт для отображения графиков производительности продукта и создаю таблицу для отображения его номера детали, списка приложений и количества текущих приложений.
Однако размер шрифта по умолчанию слишком велик, чтобы поместить всю эту информацию на слайд, и его необходимо уменьшить.
Как уменьшить размер шрифта текста в таблице в Python-pptx?
Это то, что у меня есть, но я продолжаю получать сообщение об ошибке "AttributeError: у объекта" _Cell "нет атрибута" абзаца ""
table = shapes.add_table(rows, cols, left + left_offset, top + Inches(.25), width, height - Inches(.25)).table
#column width
for i in range(3):
table.columns[i].width = col_width[i]
for i in range(len(a_slide)):
#color table
if i % 2 == 0:
for j in range(3):
fill = table.cell(i, j).fill
fill.background()
else:
for j in range(3):
fill = table.cell(i, j).fill
fill.solid()
fill.fore_color.rgb = RGBColor(240, 128, 128)
#populate table
table.cell(i, 0).text = str(item["name"])
try:
table.cell(i, 1).text = ", ".join(item["app"])
except:
table.cell(i, 1).text = " "
finally:
table.cell(i, 2).text = str(item["vio"])
for j in range(0,3):
font = table.cell(i, j).paragraph[0].font
font.size = Pt(12)
1 ответ
_Cell
объект не содержит непосредственно абзацы Тем не менее, он включает в себя TextFrame
объект на .text_frame
который содержит абзацы. Так что, если вы просто используете:
cell.text_frame.paragraphs[0]
... ты должен получить то, что ожидаешь. Обратите внимание, что это.paragraphs, а не.paragraph.
Документация по API для _Cell
здесь: http://python-pptx.readthedocs.io/en/latest/api/table.html
и, как правило, предоставляет все детали, необходимые для разрешения тонких моментов, подобных этому.