はじめに

Aspose.Slides FOSS for Python is now available on PyPI: a free, MIT-licensed library for creating, reading, and editing PowerPoint .pptx Pythonだけでファイルを完全に扱い、Microsoft Officeや任意のプロプライエタリランタイムへの依存はありません。.

このライブラリは、データからスライドデッキを自動生成したり、アップロードされたPPTXファイルからテキストやメタデータを抽出したり、プレゼンテーションベースのレポートパイプラインを構築したり、Webアプリケーションにプレゼンテーション作成機能を組み込んだりする必要がある開発者向けに設計されています。なぜなら aspose-slides-foss は純粋なPythonで、唯一の依存は lxml 依存関係として、Windows、macOS、Linux、Dockerコンテナ上で同一にデプロイされます。.

主な機能

  • 完全なラウンドトリップPPTXサポート:: 任意の .pptx ファイルを開き、内容を変更し、ライブラリがまだ理解していない未知のXMLパーツを失うことなく元に戻して保存できます。.
  • スライド管理:: スライドを追加、削除、反復処理するには prs.slides;; プレゼンテーションは、1枚の空白スライドで開始します。 slides.Presentation().
  • AutoShapes、テーブル、コネクタ: 形状を挿入するには slide.shapes.add_auto_shape(), 表形式データを経由で slide.shapes.add_table(), 形状間のビジュアルコネクタを経由で slide.shapes.add_connector().
  • リッチテキスト書式設定: 文字レベルでテキストをフォーマットするには PortionFormat: フォントサイズ、太字、斜体、下線、そして ARGB カラーを経由で FillType.SOLIDColor.from_argb().
  • 塗りつぶしタイプ: 適用する FillType.SOLID, GRADIENT, PATTERN, または PICTURE 任意の形状に塗りつぶしを適用します。.
  • ビジュアルエフェクト: 外側の影、グロー、ソフトエッジ、ぼかし、反射、そして内部影を使用して shape.effect_format.
  • 3D formatting: ベベル、カメラ、ライトリグ、マテリアル、そして押し出し深度を使用して shape.three_d_format.
  • 発表者ノート: 各スライドにノートテキストを添付する notes_slide_manager.add_notes_slide().
  • スレッドコメント: 作者メタデータとスライド位置を含むコメントを追加する。.
  • 埋め込み画像: ファイルパス、バイト、または io.BytesIO ストリーム。.
  • 文書プロパティ: コア、アプリ、カスタムプロパティを読み書きします。.

はじめに

: PyPI からインストールします。Python 3.10 以降が必要です; lxml : 自動的にインストールされます。.

pip install aspose-slides-foss

シェイプを使って最初のプレゼンテーションを作成し、保存してください::

import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat
from aspose.slides_foss import ShapeType

with slides.Presentation() as prs:
    slide = prs.slides[0]
    shape = slide.shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 400, 120)
    shape.add_text_frame("Hello from Aspose.Slides FOSS!")
    prs.save("hello.pptx", SaveFormat.PPTX)

: 常に使用してください Presentation : 内部で with : ブロック; これにより、ブロックが終了したときにすべての内部リソースが解放されます。.

テキスト書式設定の例

import aspose.slides_foss as slides
from aspose.slides_foss import ShapeType, NullableBool, FillType
from aspose.slides_foss.drawing import Color
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(ShapeType.RECTANGLE, 50, 50, 500, 150)
    tf = shape.add_text_frame("Bold heading in corporate blue")
    fmt = tf.paragraphs[0].portions[0].portion_format
    fmt.font_height = 28
    fmt.font_bold = NullableBool.TRUE
    fmt.fill_format.fill_type = FillType.SOLID
    fmt.fill_format.solid_fill_color.color = Color.from_argb(255, 0, 70, 127)
    prs.save("formatted.pptx", SaveFormat.PPTX)

現在の制限事項

: 次の領域で発生します NotImplementedError : このリリースでは:

  • チャート、SmartArt、OLE オブジェクト
  • アニメーションとスライド遷移
  • PDF、HTML、SVG、または画像形式へのエクスポート
  • ハイパーリンク、アクション設定、VBA マクロ、デジタル署名

ロード時に遭遇した不明な XML パーツは、保存時にそのまま保持されるため、他のツールで生成された PPTX ファイルも安全に往復できます。.

参照