easyx库的学习(文字绘制)

本文介绍了在EasyX图形库中如何使用文字绘制函数drawTest()以及centerText()实现文本显示,并处理了字符编码问题,确保文本在图形界面居中。
摘要由CSDN通过智能技术生成

前言

昨天刚刚写完了基本图形的制作,今天直接可以来看看,在easyx中使用文字

直接看代码吧

文字绘制

void drawTest()
{
	printf("hello,EasyX");//指的是在控制台打印
	//设置字体大小,样式
	settextstyle(30, 0, "微软雅黑");//第一个参数为长度 第二个参数为宽度
	//设置文字颜色
	settextcolor(BROWN);
	//设置背景模式
	setbkmode(TRANSPARENT);
	//绘制文字
	outtextxy(100, 100, "hello,EasyX");//前2个参数指的是首字符的坐标
	//把需要数字格式化,打印在图形界面上
	int score = 150;
	char a[50] = "";
	sprintf(a, "score:%d", score);
	outtextxy(getwidth() - 100, 0, a);

}
void centerText()
{
	//绘制矩形
	int rx = 30, ry = 380, rw = 200, rh = 60;
	setfillcolor(RGB(230, 231, 232));
	fillrectangle(rx, ry, rx + rw, ry + rh);
	//绘制文字
	settextcolor(RED);
	//使文字在图形中居中,两参数的计算
	int hspace = (rw - textwidth("center Text")) / 2;//当然,如果字符串经常被使用可以用字符串数组使用
	int vspace = (rh - textheight("center Text")) / 2;//这样方便改字符串
	outtextxy(rx + hspace, ry + vspace, "center Text");
	//可以解释一下的 嗯!!! 
	//把问题可以转化为两矩形的对齐,由于字符串是从左上角开始打印的
	//只要左上角对齐就行:我们用大矩形的长或宽减去小矩形的长或宽得到的是 当对齐时小矩形左上角的点
	//离大矩形左上角的点在x或y轴上的距离的两倍
	//最后,只要除2在分别加上大矩形一左上点的坐标,就得到文字左上坐标,也就是第一个坐标
}
int main()
{
	//创造一个图形窗口,并设计窗口颜色
	initgraph(640, 480, EX_SHOWCONSOLE);
	setbkcolor(RGB(231, 114, 227));//设置背景颜色
	cleardevice();//用设计的背景颜色填充窗口
	drawTest();//设计文字
	centerText();//使文本居中

	getchar();
	return 0;
}

看看运行结果

当然在使用时,必须要设置,否则会报错

看看如何解决

点击项目属性

改为多字节字符集

看图

这样问题就解决了

ok

祝大家学的开心

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值