ページ 11

DXライブラリでの画像読み込みについて

Posted: 2011年6月23日(木) 22:33
by ドド
お世話になります。
Dxライブラリを利用してプログラムを作成しています。
LoadGraph関数を使って画像をメモリに格納を行うのですが、
ファイルパスが書かれた変数pass、ファイル名が書かれた変数name
2つを使って、画像を読み込むことはできないのでしょうか?
int x = LoadGraph(pass,name);
など色々試したのですが、上手くいきませんでした。
よろしくお願いいたします。

Re: DXライブラリでの画像読み込みについて

Posted: 2011年6月23日(木) 22:44
by bitter_fox
ドド さんが書きました: Dxライブラリを利用してプログラムを作成しています。
LoadGraph関数を使って画像をメモリに格納を行うのですが、
ファイルパスが書かれた変数pass、ファイル名が書かれた変数name
2つを使って、画像を読み込むことはできないのでしょうか?
LoadGraph(char *FileName)しか用意されていないのでsprintf関数とかを用いて一つの文字列にしてから呼び出すようにしましょう。

コード:


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{
	char *path = "C:\\", *name = "image.png";
	char *fullName = (char*)calloc(strlen(path) + strlen(name) + 1, sizeof(char)); // pathとnameが入るサイズを確保(ヌル文字に注意)
	int img;

	sprintf(fullName, "%s%s", path, name); // 連結

	printf("fullName : %s", fullName);
	img = LoadGraph(fullName);

	free(fullName); // 解放しないとメモリリークしてしまう。

	return 0;
}
これを参考にしてファイルパスとファイル名の二つを引数として取る自前のLoadGraphを作ってみてもいいかもしれません。

Re: DXライブラリでの画像読み込みについて

Posted: 2011年6月23日(木) 23:01
by ドド
上手く動作することが確認できました。
どうもありがとうございました。