Python을 사용하여 PowerPoint에서 3D 효과 적용

MS PowerPoint는 프레젠테이션을 더욱 매력적으로 만드는 3D 효과를 제공합니다. 3D 텍스트, 모양 및 이미지를 사용하여 콘텐츠의 상호 작용성을 향상시킬 수 있습니다. 이 기사에서는 Python에서 프로그래밍 방식으로 PowerPoint PPT의 3D 효과를 적용하는 방법을 배웁니다. 프레젠테이션에서 텍스트, 모양 및 이미지에 대한 3D 효과를 만드는 방법을 다룰 것입니다.

PowerPoint에서 3D 효과를 적용하는 Python 라이브러리

.NET을 통한 Python용 Aspose.Slides는 PowerPoint 프레젠테이션을 만들고 조작하도록 설계된 기능이 풍부한 Python 라이브러리입니다. 이 라이브러리를 사용하여 PowerPoint PPT/PPTX 프레젠테이션에 3D 효과를 적용합니다. 다음 명령을 사용하여 PyPI에서 라이브러리를 설치합니다.

> pip install aspose.slides

Python의 PowerPoint에서 3D 텍스트 만들기

다음은 Python을 사용하여 PowerPoint PPT에서 3D 텍스트 조각을 만드는 단계입니다.

  • 먼저 프레젠테이션 클래스를 사용하여 새 PPT를 만들거나 기존 PPT를 로드합니다.
  • 그런 다음 add\auto\shape() 메서드를 사용하여 새 직사각형 모양을 추가합니다.
  • 채우기 유형, 텍스트 등과 같은 모양의 속성을 설정합니다.
  • 모양 내부의 텍스트 부분에 대한 참조를 개체로 가져옵니다.
  • 텍스트 부분에 서식을 적용합니다.
  • 모양 내부의 text\frame 참조를 가져옵니다.
  • text\frame.text\frame\format.three\dformat의 속성을 사용하여 3D 효과를 적용합니다.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 Python의 PowerPoint에서 3D 텍스트를 만드는 방법을 보여줍니다.

with slides.Presentation() as pres:
    # add shape
    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"

    # access text portion and apply formatting
    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

    # access text frame
    textFrame = shape.text_frame

    # set up "Arch Up" WordArt transform effect
    textFrame.text_frame_format.transform = slides.TextShapeType.ARCH_UP

    # apply 3D effects
    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

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-text.png")

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

다음 스크린샷은 위 코드 샘플의 출력을 보여줍니다.

파이썬에서 PowerPoint에서 3D 텍스트 만들기

Python의 PowerPoint에서 3D 도형 만들기

텍스트와 마찬가지로 PowerPoint 프레젠테이션의 도형에 3D 효과를 적용할 수 있습니다. 다음은 Python의 PowerPoint에서 3D 도형을 만드는 단계입니다.

  • 먼저 Presentation 클래스를 사용하여 새로운 PPT를 만듭니다.
  • 그런 다음 add\auto\shape() 메서드를 사용하여 새 직사각형 모양을 추가합니다.
  • shape.text\frame.text 속성을 사용하여 모양의 텍스트를 설정합니다.
  • shape.three\dformat의 속성을 사용하여 모양에 3D 효과를 적용합니다.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 Python을 사용하여 PowerPoint의 도형에 3D 효과를 적용하는 방법을 보여줍니다.

with slides.Presentation() as pres:
    # add shape
    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

    # apply 3D effects
    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

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape.png")

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

다음은 이 코드를 실행한 후 얻은 3D 모양입니다.

Python의 PowerPoint에서 3D 도형 만들기

3D 모양에 대한 그라디언트 만들기

아래 단계에 따라 모양에 그라데이션 효과를 적용할 수도 있습니다.

  • 먼저 Presentation 클래스를 사용하여 새로운 PPT를 만듭니다.
  • 그런 다음 add\auto\shape() 메서드를 사용하여 새 직사각형 모양을 추가합니다.
  • shape.text\frame.text 속성을 사용하여 모양의 텍스트를 설정합니다.
  • shape.fill\format.fill\type을 FillType.GRADIENT로 설정하고 그라데이션 색상을 설정합니다.
  • shape.three\dformat의 속성을 사용하여 모양에 3D 효과를 적용합니다.
  • 마지막으로 Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음 코드 샘플은 PowerPoint에서 도형에 그라데이션 효과를 적용하는 방법을 보여줍니다.

with slides.Presentation() as pres:
    # add shape
    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

    # set fill type as 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)

    # apply 3D effects
    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

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape-gradient.png")

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

다음은 그라데이션 효과를 적용한 3D 모양입니다.

PPT에서 3D 도형에 대한 그라디언트 만들기

Python에서 PowerPoint의 이미지에 3D 효과 적용

PowerPoint 프레젠테이션의 이미지에 3D 효과를 적용할 수도 있습니다. 다음은 Python에서 이 작업을 수행하는 단계입니다.

  • 프레젠테이션 클래스를 사용하여 새로운 PPT를 만듭니다.
  • 그런 다음 add\auto\shape() 메서드를 사용하여 새 직사각형 모양을 추가합니다.
  • shape.fill\format.fill\type을 FillType.PICTURE로 설정하고 이미지를 추가합니다.
  • shape.three\dformat의 속성을 사용하여 모양에 3D 효과를 적용합니다.
  • Presentation.save(String, SaveFormat) 메서드를 사용하여 프레젠테이션을 저장합니다.

다음은 Python을 사용하여 PPT의 이미지에 3D 효과를 적용하는 단계입니다.

with slides.Presentation() as pres:
    # add shape
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)

    # set fill type as picture
    shape.fill_format.fill_type = slides.FillType.PICTURE

    # load image from file
    with open("tiger.bmp", "rb") as fs : 
        data = fs.read()

        # set image
        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

        # apply 3D effects to image
        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

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("image_3d.png")

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

다음은 3D 효과를 적용한 결과 이미지입니다.

Python에서 PowerPoint의 이미지에 3D 효과 적용

무료 라이선스 받기

평가 제한 없이 .NET을 통해 Python용 Aspose.Slides를 사용할 수 있는 무료 임시 라이선스를 얻을 수 있습니다.

결론

이 기사에서는 Python을 사용하여 PowerPoint 프레젠테이션에 3D 효과를 적용하는 방법을 배웠습니다. PPT 또는 PPTX 프레젠테이션에서 3D 텍스트 또는 모양을 만들고 이미지에 3D 효과를 적용하는 방법을 다루었습니다. .NET을 통해 Python용 Aspose.Slides에 대해 자세히 알아보려면 문서를 방문하세요. 또한 포럼에 질문을 게시할 수 있습니다.

또한보십시오