Python
 Computer >> コンピューター >  >> プログラミング >> Python

PythonのPygameで画像を表示する方法

Pygameは、Pythonでゲームやマルチメディアアプリケーションを開発するための定番マルチメディアライブラリです。本記事では、pygameモジュールを使用して、画像のサイズ(高さ・幅)やウィンドウ内での表示位置を考慮しながら、画面に画像を描画する方法を解説します。

画像表示の基本的な流れ

以下のサンプルプログラムでは、まずpygameモジュールを初期化し、ウィンドウのサイズとキャプション(タイトルバーの文字列)を設定します。その後、画像ファイルを読み込み、表示する座標を指定します。screen.blit()関数が実際に画面へ画像を描画し、whileループがウィンドウを閉じる操作(QUITイベント)を常時監視することで、プログラムが意図せず終了しないように制御しています。

サンプルコード

import pygame
pygame.init()
w = 300
h = 300
screen = pygame.display.set_mode((w, h))
pygame.display.set_caption('Tutorialspoint Logo')
TPImage = pygame.image.load("E:\\Python3\\tutorialspoint.png").convert()
# 画像を表示する座標
x = 10
y = 20
screen.blit(TPImage, (x, y))
# 画面を一度だけ更新して描画を反映
pygame.display.flip()
running = True
while running:  # ゲーム終了イベントを監視するループ
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False
# ループを抜けたらpygameを終了
pygame.quit()

コードのポイント解説

  • pygame.init():pygameの全モジュールを初期化します。必ず最初に呼び出します。
  • pygame.display.set_mode((w, h)):幅300px・高さ300pxのウィンドウ(サーフェス)を生成します。
  • pygame.image.load().convert():画像を読み込みます。convert()を付けることで画面形式に最適化され、描画速度が向上します。
  • screen.blit(画像, (x, y)):指定した座標(x=10, y=20)を左上として画像を貼り付けます。
  • pygame.display.flip():裏画面の内容を表画面に反映し、描画を確定させます。
  • イベントループpygame.event.get()でイベントを取得し、pygame.QUIT(ウィンドウの×ボタン)が検知されたらループを抜けてpygame.quit()で終了します。

実行結果

上記のコードを実行すると、指定した位置に画像が描画されたウィンドウが表示されます。

PythonのPygameで画像を表示する方法

  1. Pythonでフラクタルツリーを描画する方法|pygame・Turtleモジュールの実装例

    フラクタルパターンは自然界のいたるところに存在します。例えば、シダの葉の一部を切り取ってみると、その小さな部分が葉全体とよく似た形をしていたり、小さな石ころが山のシルエットに resembling していたりします。このように「小さなパターンの繰り返しによって大きなパターンを生み出す」という考え方を、フラクタルと呼びます。Pythonプログラミングでは、標準的・サードパーティ製のさまざまなモジュールを活用することで、こうしたフラクタルツリーを簡単に生成できます。本記事では、代表的な2つの手法――pygameモジュールとTurtleモジュールを使った実装方法を、サンプルコード付きで解説します。p

  2. Pythonで画像を操作する方法|Pillowライブラリの基本から実践まで

    Pythonで画像処理を行う際に、最も人気があり事実上の標準とされているライブラリがPillowです。Pillowは旧Python Image Library(PIL)の後継バージョンであり、シンプルな操作から高度な画像加工まで幅広い機能を提供しています。また、SciPyやMatplotlibなど他のPythonライブラリにおける簡易的な画像サポートの基盤としても利用されています。Pillowのインストール方法作業を始める前に、PythonとPillowが必要です。Linux環境では、Fedora、Debian/Ubuntu、ArchLinuxなどの主要ディストリビューションにおいて、以前はP