[Python] text color in python-pptx module

Discussão em 'Python' iniciado por Stack, Abril 6, 2025.

  1. Stack

    Stack Membro Participativo

    I would like to color a sentence, in different color - say, the first half in red and rest in blue.

    my code so far is like

    from pptx import Presentation
    from pptx.util import Inches, Pt
    from pptx.dml.color import ColorFormat, RGBColor
    from pptx.enum.dml import MSO_COLOR_TYPE, MSO_THEME_COLOR
    import codecs


    prs = Presentation()
    title_slide_layout = prs.slide_layouts[0]
    slide = prs.slides.add_slide(title_slide_layout)


    text_file = open("content.txt", "r")
    # read the lyrics file
    lines = text_file.readlines()

    # page title
    title = slide.shapes.title

    # text frame in the page
    tf = title.textframe

    # paragrap in the text frame
    p = tf.add_paragraph()
    # write the first sentence
    #p.text = unicode(lines[0], encoding='utf-8')
    p.text = "hello is red the rest is blue"
    p.font.bold = True
    p.font.color.rgb = RGBColor(255, 0, 0)

    prs.save('test.pptx')
    text_file.close()


    in my code, the entire sentence is red; I would like to know how can I address different words to different color - again, say first half red the rest in blue.

    Continue reading...

Compartilhe esta Página