PythonでPowerPointプレゼンテーションをWord文書に変換
概要
本記事では、開発者向けに Aspose.Slides for Python via .NET と Aspose.Words for Python via .NET を使用して、PowerPoint および OpenDocument プレゼンテーションを Word 文書に変換するソリューションを提供します。ステップバイステップのガイドで、変換プロセスのすべての段階を案内します。
プレゼンテーションを Word 文書に変換する
以下の手順に従って、PowerPoint または OpenDocument プレゼンテーションを Word 文書に変換します。
- Presentation クラスのインスタンスを作成し、プレゼンテーション ファイルを読み込みます。
- Document と DocumentBuilder クラスのインスタンスを作成して、Word 文書を生成します。
- DocumentBuilder.page_setup プロパティを使用して、Word 文書のページサイズをプレゼンテーションのサイズに合わせます。
- DocumentBuilder.page_setup プロパティを使用して、Word 文書の余白を設定します。
- Presentation.slides プロパティを使用して、すべてのプレゼンテーション スライドを処理します。
- Slide クラスの
get_imageメソッドを使用してスライド画像を生成し、メモリ ストリームに保存します。 - DocumentBuilder クラスの
insert_imageメソッドを使用して、スライド画像を Word 文書に追加します。
- Slide クラスの
- Word 文書をファイルに保存します。
たとえば、次のようなプレゼンテーション “sample.pptx” があるとします。

以下の Python コード例は、PowerPoint プレゼンテーションを Word 文書に変換する方法を示しています。
import aspose.slides as slides
import aspose.words as words
# プレゼンテーション ファイルを読み込みます。
with slides.Presentation("sample.pptx") as presentation:
# Document と DocumentBuilder オブジェクトを作成します。
document = words.Document()
builder = words.DocumentBuilder(document)
# Word 文書のページサイズを設定します。
slide_size = presentation.slide_size.size
builder.page_setup.page_width = slide_size.width
builder.page_setup.page_height = slide_size.height
# Word 文書の余白を設定します。
builder.page_setup.left_margin = 0
builder.page_setup.right_margin = 0
builder.page_setup.top_margin = 0
builder.page_setup.bottom_margin = 0
scale_x = 2
scale_y = 2
# すべてのプレゼンテーション スライドを処理します。
for slide in presentation.slides:
# スライド画像を生成し、メモリ ストリームに保存します。
with slide.get_image(scale_x, scale_y) as image:
image_stream = BytesIO()
image.save(image_stream, slides.ImageFormat.PNG)
# スライド画像を Word 文書に追加します。
image_stream.seek(0)
image_width = builder.page_setup.page_width
image_height = builder.page_setup.page_height
builder.insert_image(image_stream.read(), image_width, image_height)
builder.insert_break(words.BreakType.PAGE_BREAK)
# Word 文書をファイルに保存します。
document.save("output.docx")
結果:

よくある質問
PowerPoint および OpenDocument プレゼンテーションを Word 文書に変換するために必要なコンポーネントは何ですか?
Python プロジェクトに Aspose.Slides for Python via .NET と Aspose.Words for Python .NET の各パッケージを追加するだけで済みます。両パッケージはスタンドアロン API として動作し、Microsoft Office をインストールする必要はありません。
すべての PowerPoint および OpenDocument プレゼンテーション形式がサポートされていますか?
Aspose.Slides for Python .NET は、PPT、PPTX、ODP などの一般的なファイル形式を含む、すべてのプレゼンテーション形式をサポートしています。これにより、さまざまなバージョンの Microsoft PowerPointで作成されたプレゼンテーションを扱うことができます。