pptx 程序中的字体大小和颜色问题

问题描述 投票:0回答:1

ive 创建了一个代码来从数据框创建 PPT 演示文稿。定义了一个过程“addtext”来添加传递一些参数的文本。不知何故,程序忽略了文本大小和颜色.. 为什么?谢谢!

from pptx import Presentation
from pptx.util import Inches, Pt
prs = Presentation()
blank_slide_layout = prs.slide_layouts[6]
import pandas as pd

data = {
    'titolo': ['Pizza Margherita', 'Bolognese', 'Fish and Chips', 'Tacos', 'Sushi', 'Paella', 'Spaghetti Carbonara', 'Couscous', 'Falafel', 'Goulash'],
    'commenti': ['pomodoro, mozzarella, basilico', 'pomodoro, carne macinata, carote, sedano, cipolla', 'pesce fritto, patatine fritte', 'carne, cipolle, peperoni, pomodoro, avocado', 'riso, pesce crudo, alga nori', 'riso, pollo, gamberi, verdure', 'uova, pancetta, pecorino romano', 'couscous, agnello, verdure', 'fagioli, cipolle, spezie', 'carne, paprika, patate'],
    'numero': [8, 12, 10, 9, 15, 20, 14, 18, 6, 16],
    'paese': ['Italia', 'Italia', 'Regno Unito', 'Messico', 'Giappone', 'Spagna', 'Italia', 'Marocco', 'Medio Oriente', 'Ungheria']
}

df = pd.DataFrame(data)


def addtext(titlee,L,T,SS,RR,GG,BB):
    txBox = slide.shapes.add_textbox(Inches(L),Inches(T),Inches(1),Inches(1))
    tf = txBox.text_frame
    p = tf.paragraphs[0]
    run = p.add_run()
    run.text = titlee
    font.name = 'Calibri'
    font.size = Pt(SS)
    font.color.rgb = RGBColor(RR,GG,BB)

for index, row in df.iterrows():
    slide = prs.slides.add_slide(blank_slide_layout)
    
    addtext(row['titolo'],.2,1,42,0, 0, 255)
    addtext(row['commenti'],.2,2,22,102, 255, 102)
    addtext('Costo medio: ' + str(row['numero']) + ' €',.2,5,18,32, 32, 255)

prs.save('test.pptx')
python procedure python-pptx
1个回答
0
投票

您还没有将

font
变量与运行相关联(变量
run
)。

© www.soinside.com 2019 - 2024. All rights reserved.