Pythonを使用してPowerPointで3D効果を適用する

MS PowerPointは、プレゼンテーションをより魅力的にするための3D効果を提供します。 3Dテキスト、図形、および画像を使用して、コンテンツの双方向性を強化できます。この記事では、PythonでプログラムによってPowerPointPPTに3D効果を適用する方法を学習します。プレゼンテーションでテキスト、図形、画像の3D効果を作成する方法について説明します。

PowerPointで3D効果を適用するPythonライブラリ

Aspose.Slides for Python via .NETは、PowerPointプレゼンテーションを作成および操作するために設計された機能豊富なPythonライブラリです。このライブラリを使用して、PowerPoint PPT/PPTXプレゼンテーションに3D効果を適用します。次のコマンドを使用して、PyPIからライブラリをインストールします。

> pip install aspose.slides

PythonでPowerPointで3Dテキストを作成する

以下は、Pythonを使用してPowerPointPPTで3Dテキストフラグメントを作成する手順です。

  • まず、新しいPPTを作成するか、Presentationクラスを使用して既存のPPTをロードします。
  • 次に、add \ auto \ shape()メソッドを使用して新しい長方形の形状を追加します。
  • 塗りつぶしの種類、テキストなどの図形のプロパティを設定します。
  • 図形内のテキスト部分の参照をオブジェクトに取得します。
  • テキスト部分にフォーマットを適用します。
  • 図形内のテキスト\フレームの参照を取得します。
  • 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)

次のスクリーンショットは、上記のコードサンプルの出力を示しています。

Pythonで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でこの操作を実行するための手順です。

  • Presentationクラスを使用して新しい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経由でAspose.Slides for Pythonを使用できます。

結論

この記事では、Pythonを使用してPowerPointプレゼンテーションに3D効果を適用する方法を学びました。 3Dテキストまたは図形を作成し、PPTまたはPPTXプレゼンテーションの画像に3D効果を適用する方法について説明しました。 .NETを介したAspose.Slides for Pythonについて詳しく知りたい場合は、ドキュメントにアクセスしてください。また、フォーラムにクエリを投稿することもできます。

関連項目