建立旅游网站的目的,免费的百度网站怎么做,wordpress图片上传,河北最新情况最新消息今天在C语言的学习过程中#xff0c;接触最多的就是黑乎乎的DOS窗口#xff0c;这也是在消磨学习者的兴趣#xff0c;学到最后可能还不知道C语言到底能做什么#xff0c;难道就是输入输出数据吗#xff1f;当然不是#xff0c;C的用处很广泛#xff0c;这里不做讨论。我们能…在C语言的学习过程中接触最多的就是黑乎乎的DOS窗口这也是在消磨学习者的兴趣学到最后可能还不知道C语言到底能做什么难道就是输入输出数据吗当然不是C的用处很广泛这里不做讨论。我们能不能用C语言做些好玩的东西当然可以我们可以做游戏可以做动画还有很多能装逼的东西在外行眼里看来你的逼格高的就不是一点点了。做游戏、做动画一定要用到图片、音频等怎么用C语言显示出来呢这里我们就要用到EasyX库了在文章末尾有百度网盘链接下载后双击安装即可但有编译器限制VC、VS都可以安装Dev C目前不能安装EasyX库。文章的末尾给出了几个小项目。
当我们安装好EasyX库后该怎么用呢我们首先来显示一张图片首先我们要创立一个图形窗口要建立.cpp文件才可以用EasyX因为EasyX库是属于C范畴的但在编程风格上用的是C语言。
1、添加头文件 #include graphics.h 2、定义图像变量 IMAGE image1;IMAGE通俗的说可视为图,型和int,char一样IMAGE image1就是说定义一个图片型变量image1。
3、创立图形窗口
initgraph(800, 600); 这个函数就是说建立一个宽为800像素高为600像素的图形窗口。
4、加载图片
loadimage(image1, Lbird.png, 200, 100); 选择一张图片我这里的图片名为bird.jpg,将它放在和你源文件同一目录下。这个函数的意思就是说将这张名为bird.png的图片与image1绑定在一块用image1代表bird.png并将其宽和高拉伸为200和100像素点。
5、显示图片
putimage(200,300,image1);这个函数的意思就是说将image1显示在所创立的图形窗口的200,300处这是一个坐标
最终的程序是这样的 在有的时候我们想要把一张图片的某一部分显示在另一张图片上例如把图1中的马显示在以图2为背景的图中。 图1 图2 这个时候我们不能直接贴否则无法去除图1中的背景如图3结果。这很显然不是我们想要的。 图3 而我们真正想要的是这样的如图4。 图4
这个时候我们需要用到图片编辑软件只要能抠图就行PS是最佳选择此处就以PS为例文章末尾有PS百度网盘连接安装过程十分简单不做赘述选择图1用PS打开W键用于抠图把这个圆形光标调小一些仔细把马选中Ctrlc复制然后选择文件-新建一个黑底剪切板Ctrlv粘贴便可得到图5把它导出来继续选择文件-新建一个白底剪切板Ctrlv粘贴在用W键把这个马选择出来鼠标右键填充选择黑色此时在右键选择取消选择便可得到图6再把它导出来。 图5 图6
将图2、图5、图6放在项目中分别命名为bk.jpg、1.png、2.png。 代码如下
#includestdio.h
#includegraphics.h
#includestdlib.hint main()
{IMAGE bk, image1, image2;initgraph(1000, 600);loadimage(bk,bk.jpg,1000,600);loadimage(image1, 1.png);loadimage(image2, 2.png);putimage(0, 0, bk);//先贴黑白图,即2.pngputimage(50, 100, //显示的位置286, 167,//图片的大小也可自行设置大小image2, //选择需要贴的图0, 0, //从该图片的起始位置开始显示SRCAND //绘制出的像素颜色 屏幕颜色 图像颜色);//再贴彩黑图,即1.pngputimage(50, 100, 286, 167,image1, 0, 0, //与上相同SRCPAINT //绘制出的像素颜色 屏幕颜色 | 图像颜色);system(pause);return 0;
}为什么这样可以把马显示在图2中呢 我们知道三原色可以构成任何一种颜色其中黑色的三原色构成为000白色为255255255其余的颜色在0—255之间。 在8位数与运算中任何数与255 相与都等于该数与0 相与都等于0 。比如我们拿100和255相与255的二进制表示就是11111111100的二进制是01100100二者相与自然就是01100100也就是100,后面的或运算也同理。我们先拿黑白图图6按与的形式贴在背景图图2上因为白色的三原色数值是最大的非白色与白色等于非白色又因为黑色的三原色数值最小所以非黑色与黑色等于黑色。示意图如下 接着按或贴彩黑图图5一样的道理在8位数或运算中任何一个数与0 相或 都等于该数非黑色或黑色等于非黑色。示意图如下
EasyX链接 链接https://pan.baidu.com/s/1CTWMbqaATgx663M01vRA5A 提取码2chn
PS软件链接 链接https://pan.baidu.com/s/1PfaBDBnq07CnDzvwWIBZ2g 提取码m3sd
小项目 自定义一个屏保程序
制作一个简易钟表
EasyX常用函数请点此处查看