图片显示不了

0

vs 是 2019,easyx 是官网最新版 20200902 的

我有几张图可以显示,但另外几张却不能显示,调了一天还是不知道问题在哪里。

现在下了功夫纯手打了一份精简代码,过程有好有坏。我边打边运行,首先背景顺利的显示了,接着飞机也能显示出来,有点兴奋。但到了飞机遮罩那里就显示不出了,然后我又加上敌机的代码,也没有显示,我真的摸不着头脑,这东西真的好奇怪。

#include <stdio.h>
#include <windows.h>
#include <conio.h>
#include <graphics.h>
#pragma comment(lib,"Winmm.lib")
#define Width 500
#define High 700
IMAGE img_bg; //背景
IMAGE img_plane1; //飞机
IMAGE img_plane2; //飞机遮罩
IMAGE img_enermy1, img_enermy2; //敌机和敌机遮罩
float plane_x=Width*0.4, plane_y=High*0.7;
float enermy_x = Width * 0.2, enermy_Y = High * 0.3;

int main()
{
	initgraph(Width, High);
	loadimage(&img_bg,_T("D:\\123\\Pictures\\飞机空战素材\\background.jpg"));	//显示背景
	putimage(0, 0, &img_bg);
	loadimage(&img_plane2, _T("‪D:\\123\\Pictures\\飞机空战素材\\plane2.jpg"));	//显示飞机遮罩
	putimage(plane_x, plane_y, &img_plane2, NOTSRCERASE);
	loadimage(&img_plane1, _T("D:\\123\\Pictures\\飞机空战素材\\plane.jpg"));	//显示飞机
	putimage(plane_x, plane_y, &img_plane1, SRCINVERT);
	loadimage(&img_enermy1, _T("‪D:\\123\\Pictures\\飞机空战素材\\enermy.jpg"));	//显示敌机
	putimage(enermy_x, enermy_Y, &img_enermy1);
	_getch(); //暂停界面
}


ava
随缘

2020-10-11

0

你的问题是无法显示图片,这类奇怪的问题没有直接答案,你需要的是排查问题的步骤。

所以第一步,你要做的是删掉所有无关代码,仅仅使用加载图片的代码,看看是否能显示出来图片。尤其是确保能显示的图和不能显示的图在同一段代码里,最有说服力。

如果精简后的代码仍然存在部分图片无法加载,就修改下你的问题,补充上你的代码。

补充:

作为测试,你的代码还是太复杂,应该先这么做,测试下图片是否正确加载:

#include <conio.h>
#include <graphics.h>

IMAGE img_bg; //背景
IMAGE img_plane1; //飞机
IMAGE img_plane2; //飞机遮罩
IMAGE img_enermy1; //敌机和敌机遮罩

int main()
{
	initgraph(500, 700);

	loadimage(&img_bg, _T("D:\\123\\Pictures\\飞机空战素材\\background.jpg"));	//显示背景
	putimage(200, 0, &img_bg);

	loadimage(&img_plane2, _T("‪D:\\123\\Pictures\\飞机空战素材\\plane2.jpg"));	//显示飞机遮罩
	putimage(0, 0, &img_plane2);

	loadimage(&img_plane1, _T("D:\\123\\Pictures\\飞机空战素材\\plane.jpg"));	//显示飞机
	putimage(0, 200, &img_plane1);

	loadimage(&img_enermy1, _T("‪D:\\123\\Pictures\\飞机空战素材\\enermy.jpg"));	//显示敌机
	putimage(0, 400, &img_enermy1);

	_getch(); //暂停界面
}

试试看,执行后,是否显示了所有的图片?

如果这些图片都可以显示,那么问题应该出现在其它代码上。

另外我看到你用的三元光栅操作,现在有更简单的做法,你可以参考这里:https://codebus.cn/yangw/a/transparent-putimage

ava
慢羊羊

2020-10-11

vs是2019,easyx是20200902,文件版本16.4.0, -  随缘  2020-10-11
技术讨论社区
相关提问