Använd 3D-effekter i PowerPoint med Python

MS PowerPoint tillhandahåller 3D-effekter för att göra presentationerna mer attraktiva. Du kan använda 3D-text, former och bilder för att förbättra innehållets interaktivitet. I den här artikeln kommer du att lära dig hur du applicerar 3D-effekterna i PowerPoint PPT programmatiskt i Python. Vi kommer att ta upp hur man skapar 3D-effekter för text, former och bilder i presentationerna.

Python Library för att tillämpa 3D-effekter i PowerPoint

Aspose.Slides for Python via .NET är ett funktionsrikt Python-bibliotek som är utformat för att skapa och manipulera PowerPoint-presentationer. Vi kommer att använda det här biblioteket för att tillämpa 3D-effekter i PowerPoint PPT/PPTX-presentationer. Använd följande kommando för att installera biblioteket från PyPI.

> pip install aspose.slides

Skapa en 3D-text i PowerPoint i Python

Följande är stegen för att skapa ett 3D-textfragment i PowerPoint PPT med Python.

  • Skapa först en ny PPT eller ladda en befintlig med presentationsklassen.
  • Lägg sedan till en ny rektangelform med metoden addautoshape().
  • Ställ in formens egenskaper som fyllningstyp, text osv.
  • Få referens av textdelen inuti formen till ett objekt.
  • Använd formatering på textdelen.
  • Få referens till textramen inuti formen.
  • Tillämpa 3D-effekter med hjälp av egenskaper i textframe.textframeformat.threedformat.
  • Slutligen, spara presentationen med metoden Presentation.save(String, SaveFormat).

Följande kodexempel visar hur man skapar en 3D-text i PowerPoint i Python.

with slides.Presentation() as pres:
    # lägga till form
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)
    shape.fill_format.fill_type = slides.FillType.NO_FILL
    shape.fill_format.fill_type = slides.FillType.NO_FILL
    shape.line_format.fill_format.fill_type = slides.FillType.NO_FILL
    shape.text_frame.text = "3D text"

    # komma åt textdelen och tillämpa formatering
    portion = shape.text_frame.paragraphs[0].portions[0]
    portion.portion_format.fill_format.fill_type = slides.FillType.PATTERN
    portion.portion_format.fill_format.pattern_format.fore_color.color = drawing.Color.dark_orange
    portion.portion_format.fill_format.pattern_format.back_color.color = drawing.Color.white
    portion.portion_format.fill_format.pattern_format.pattern_style = slides.PatternStyle.LARGE_GRID

    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 128

    # åtkomst till textram
    textFrame = shape.text_frame

    # ställ in "Arch Up" WordArt transformeringseffekt
    textFrame.text_frame_format.transform = slides.TextShapeType.ARCH_UP

    # tillämpa 3D-effekter
    textFrame.text_frame_format.three_dformat.extrusion_height = 3.5
    textFrame.text_frame_format.three_dformat.depth = 3
    textFrame.text_frame_format.three_dformat.material = slides.MaterialPresetType.PLASTIC
    textFrame.text_frame_format.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    textFrame.text_frame_format.three_dformat.light_rig.light_type = slides.light_rigPresetType.BALANCED
    textFrame.text_frame_format.three_dformat.light_rig.set_rotation(0, 0, 40)

    textFrame.text_frame_format.three_dformat.camera.camera_type = slides.CameraPresetType.PERSPECTIVE_CONTRASTING_RIGHT_FACING

    # spara som bild (valfritt)
    pres.slides[0].get_thumbnail(2, 2).save("3D-text.png")

    # spara presentationen
    pres.save("3D-text.pptx", slides.export.SaveFormat.PPTX)

Följande skärmdump visar utdata från kodexemplet ovan.

Skapa en 3D-text i PowerPoint i python

Skapa en 3D-form i PowerPoint i Python

I likhet med text kan du använda 3D-effekter på formerna i PowerPoint-presentationer. Följande är stegen för att skapa en 3D-form i PowerPoint i Python.

  • Skapa först en ny PPT med presentationsklassen.
  • Lägg sedan till en ny rektangelform med metoden addautoshape().
  • Ställ in formens text med egenskapen shape.textframe.text.
  • Tillämpa 3D-effekter på formen med hjälp av egenskaper i shape.threedformat.
  • Slutligen, spara presentationen med metoden Presentation.save(String, SaveFormat).

Följande kodexempel visar hur man tillämpar 3D-effekter på former i PowerPoint med Python.

with slides.Presentation() as pres:
    # lägga till form
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 200, 200)
    shape.text_frame.text = "3D"
    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 64

    # tillämpa 3D-effekter
    shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
    shape.three_dformat.camera.set_rotation(20, 30, 40)
    shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
    shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    shape.three_dformat.material = slides.MaterialPresetType.FLAT 
    shape.three_dformat.extrusion_height = 100
    shape.three_dformat.extrusion_color.color = drawing.Color.blue

    # spara som bild (valfritt)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape.png")

    # spara presentationen
    pres.save("3D-shape.pptx", slides.export.SaveFormat.PPTX)

Följande är 3D-formen som vi får efter att ha kört den här koden.

Skapa en 3D-form i PowerPoint i Python

Skapa gradient för 3D-former

Du kan också tillämpa gradienteffekter på formerna genom att följa stegen nedan.

  • Skapa först en ny PPT med presentationsklassen.
  • Lägg sedan till en ny rektangelform med metoden addautoshape().
  • Ställ in formens text med egenskapen shape.textframe.text.
  • Ställ shape.fillformat.filltype till FillType.GRADIENT och ange gradientfärger.
  • Tillämpa 3D-effekter på formen med hjälp av egenskaper i shape.threedformat.
  • Slutligen, spara presentationen med metoden Presentation.save(String, SaveFormat).

Följande kodexempel visar hur man tillämpar gradienteffekter på former i PowerPoint.

with slides.Presentation() as pres:
    # lägga till form
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)
    shape.text_frame.text = "3D"
    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 64

    # ange fyllningstyp som gradient
    shape.fill_format.fill_type = slides.FillType.GRADIENT
    shape.fill_format.gradient_format.gradient_stops.add(0, drawing.Color.blue)
    shape.fill_format.gradient_format.gradient_stops.add(100, drawing.Color.orange)

    # tillämpa 3D-effekter
    shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
    shape.three_dformat.camera.set_rotation(10, 20, 30)
    shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
    shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    shape.three_dformat.extrusion_height = 150
    shape.three_dformat.extrusion_color.color = drawing.Color.dark_orange

    # spara som bild (valfritt)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape-gradient.png")

    # spara presentationen
    pres.save("3D-shape-gradient.pptx", slides.export.SaveFormat.PPTX)

Följande är 3D-formen efter applicering av gradienteffekten.

Skapa gradient för 3D-former i PPT

Tillämpa 3D-effekter på en bild i PowerPoint i Python

Du kan också använda 3D-effekter på bilderna i PowerPoint-presentationer. Följande är stegen för att utföra denna operation i Python.

  • Skapa en ny PPT med presentationsklassen.
  • Lägg sedan till en ny rektangelform med metoden addautoshape().
  • Ställ shape.fillformat.filltype till FillType.PICTURE och lägg till bild.
  • Tillämpa 3D-effekter på formen med hjälp av egenskaper i shape.threedformat.
  • Spara presentationen med metoden Presentation.save(String, SaveFormat).

Följande är stegen för att tillämpa 3D-effekter på en bild i PPT med Python.

with slides.Presentation() as pres:
    # lägga till form
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)

    # ställ in fyllningstyp som bild
    shape.fill_format.fill_type = slides.FillType.PICTURE

    # ladda bild från filen
    with open("tiger.bmp", "rb") as fs : 
        data = fs.read()

        # ställ in bild
        shape.fill_format.picture_fill_format.picture.image = pres.images.add_image(data)
        shape.fill_format.picture_fill_format.picture_fill_mode = slides.PictureFillMode.STRETCH

        # tillämpa 3D-effekter på bilden
        shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
        shape.three_dformat.camera.set_rotation(10, 20, 30)
        shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
        shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
        shape.three_dformat.extrusion_height = 150
        shape.three_dformat.extrusion_color.color = drawing.Color.dark_orange

    # spara som bild (valfritt)
    pres.slides[0].get_thumbnail(2, 2).save("image_3d.png")

    # spara presentationen
    pres.save("3D-image.pptx", slides.export.SaveFormat.PPTX)

Följande är den resulterande bilden som vi får efter att ha applicerat 3D-effekter.

Tillämpa 3D-effekter på en bild i PowerPoint i Python

Skaffa en gratis licens

Du kan få en gratis temporär licens för att använda Aspose.Slides för Python via .NET utan utvärderingsbegränsningar.

Slutsats

I den här artikeln har du lärt dig hur du använder 3D-effekter i PowerPoint-presentationer med Python. Vi har täckt hur man skapar 3D-text eller -former och tillämpar 3D-effekter på bilder i PPT- eller PPTX-presentationer. Om du vill utforska mer om Aspose.Slides för Python via .NET kan du besöka dokumentationen. Du kan också skicka dina frågor till vårt forum.

Se även