d2d_gif_frame_to_image

GIF アニメの指定フレームを d2d_image として取り出す

d2d_gif_frame_to_image handle, frame_idx, dst_id

handle    : d2d_gif_load が返した GIF ハンドル
frame_idx : 取り出すフレーム番号 (0 始まり)
dst_id    : 画像を作る先の画像 ID (0~255)

(プラグイン / モジュール : hspd2d)

解説

指定フレームを WIC から取り出し、PBGRA 形式に変換して dst_id に d2d_image として
構築する。以後その画像 ID は通常の d2d_image と同様に d2d_drawimage の src_id として
使えるほか、d2d_image_save で PNG/JPEG 等に書き出すこともできる。
既存の dst_id が使用中だった場合は先に解放してから作り直す。

サンプル

#include "hspd2d.hsp"
	d2d_init
	d2d_image_create 0, 640, 480
	d2d_gif_load "anim.gif"
	h = stat
	n = d2d_gif_frame_count(h)
	mes "frames = " + n
	repeat n
		d2d_gif_frame_to_image h, cnt, 1
		d2d_image_select 0
		d2d_clear 255, 255, 255
		d2d_drawimage 1, 0, 0, 0, 0
		d2d_image_save 0, "frame_" + cnt + ".png"
	loop
	d2d_gif_free h

関連項目

d2d_gif_loadGIF アニメファイルを読み込んでデコーダハンドルを取得(hspd2d)
d2d_drawimage別の画像をカレント画像に描画する(hspd2d)
d2d_image_saveカレント画像をファイルに保存する(hspd2d)

サンプル逆引き (1)

sample_gif_anim.hsp

情報

プラグイン / モジュールhspd2d
バージョン0.4
作成日2026/04/14
著作者IronHSP project
URLhttps://github.com/inovia/IronHSP
備考hspd2d.hsp をインクルードすること。hsp3net 専用 (NSTRUCT / intptr / COM 機能を使うため)。
タイプ内蔵命令
グループhspd2d - DirectWrite + Direct2D + WIC 描画モジュール
対応環境
  • その他 : Win10 22H2+
hs ファイルhsphelp\hspd2d.hs