c语言的图形库
图形库链接http://www.easyx.cn/ 使用图形库头文件easyx.h或graphics.h
同样在里面下载图形库帮助文档进行查询
vs vc都可使用图形库
图形库窗口:
initgraph打开窗口
closegraph关闭窗口
颜色
RGB值 RGB(,,):red green blue 下表值都可以在函数中直接使用填充颜色
上图为图形库的三种颜色
路径
绝对路径 从盘符开始到每个文件夹,通过盘符找到指定文件,只能在自己电脑中使用代码发给别人就不适用了
相对路径 exe
情况1:exe和素材同一个文件夹下面 直接写文件(当前文件夹)
情况2:“123/素材.jpg”(当前文件夹下面一个文件夹)
情况3:上级文件夹使用../多一级多一个点列:../123/素材.jpg
./当前文件夹(exe所在的文件夹)
./写和不写没区别一般不写
资源文件——>素材直接导入到文件当中
优点直接发程序不需要发素材
缺点程序很大
一般不会导入素材
画图:
circle画圆
fillcircle画填充圆(带边框)
solidcircle填充圆(不带边框)
后面加三个参数x轴y轴以及半径
setlinecolor设置边框颜色
setfillcolor设置填充颜色
输出文本
setbkmode(TRANSPARENT);//设置文字字体透明 图片上写文字(不写会遮挡文字)
settextcolor(RGB(173, 216, 230));//设置文本颜色
settextstyle(40, 0, L"微软雅黑");//设置文本大小和字体
outtextxy(0, 0, L"图形库");//在指定位置输出文本
outtextxy(20, 20, L"ABCD");//L表示多字节
图像处理
一般使用.jpg和.bmp
用代码实现在图形库中输出字体画出形状
#include<stdio.h>
#include<easyx.h>
//#include<graphics.h>
int main()
{
initgraph(, );//窗口单位像素
setlinecolor(RGB(, , ));
circle(,,);
setlinecolor(RED);//设置边框颜色
setfillcolor(LIGHTBLUE);//设置填充颜色
fillcircle(, , );//填充圆
solidcircle(, , );//没有边框的填充圆 setbkmode(TRANSPARENT);//设置文字字体透明 图片上写文字
settextcolor(RGB(, , ));//设置文本颜色
settextstyle(, , L"微软雅黑");//设置文本大小和字体
outtextxy(, , L"图形库");//在指定位置输出文本
outtextxy(, , L"ABCD");//L表示多字节
getchar();
IMAGE img;//准备变量存放图片
// C:\Users\18080\Pictures\帅钢.jpg 绝对路径 细化每个文件夹
// loadimage(&img, L"C:\\Users\\18080\\Pictures\\帅钢.jpg");//第二个参数是文件路径
// loadimage(&img, L"C:/Users/18080/Pictures/帅钢.jpg");//可以用做斜杠替代
loadimage(&img, L"123/帅钢.jpg");//相对路径
initgraph(img.getwidth(),img.getheight());//图形库的大小由图片的宽和高决定
//对于文件路径 可以用斜杠隔开/ \
//代码里 字符串中\\ 表示\
putimage(, , &img);
getchar();
closegraph();//关闭窗口
return ;
}
代码贴上去的图片
如何使用代码将图片直接放置到.exe文件中
#include<stdio.h>
#include<easyx.h>
int main()
{
IMAGE img;
loadimage(&img, L"JPG",MAKEINTRESOURCE());
initgraph(img.getwidth(),img.getheight());
putimage(,,&img);
getchar();
closegraph();
}
在资源文件下面添加资源:
选择第一个进行导入
在.rc文件下查看代码 找到ID下面找到JPG文件格式
在resource.h下面找到ID 101
最后补写代码loadimage(&img, L"JPG",MAKEINTRESOURCE(101));//
如上图直接在.exe文件中打开不需要外部文件
弊端就是.exe文件过大
c语言的图形库的更多相关文章
- [C语言]进阶|图形库
---------------------------------------------------------------------- // main.c // Created by weich ...
- C语言图形库简单对比及EGE库的安装小手册
近期在琢磨C语言的图形库,发现主要有如下几种选择: Turbo C 的graphics库 SDL EasyX EGE 1. 普遍认为Graphics库太老了,而且TurboC本身使用比较麻烦,网上一边 ...
- C++学习(三十九)(C语言部分)之 游戏项目(2048游戏)
/***************************项目 2048**********************c语言编写 图形库制作时间:2019.04.03 准备工具: vs2013 图形库 i ...
- C语言实现鼠标绘图
使用C语言+EGE图形库(Easy Graphics Engine).思路是通过不断绘制直线来实现鼠标绘图的功能,前一个时刻鼠标的坐标作为直线的起点,现在时刻的坐标作为终点(严格意义是线段而不是直线) ...
- QT树莓派交叉编译环开发环境搭建(附多个exe工具下载链接)
前两天入手了一块2.8’的tft液晶显示屏,于是和树莓派连了一发,成功将命令行显示在了这块小的可怜的屏幕上之后,觉得这屏幕就显示个黑白内容太浪费了,于是考虑开发一个”脸”(图形用户界面,GUI).首先 ...
- SDL相关学习
原文地址:https://www.cnblogs.com/landmark/category/311822.html 介绍SDL图形库的使用 SDL显示文字 摘要: 前面教程里,我们只显示图片,没提到 ...
- [原]零基础学习视频解码之安装ffmpeg
写在文章前面:ffmpeg是一个开源的编解码框架,拥有很强大的功能.但是对于如果使用其来做开发呈现着严重两极分化,大神们讨论着高深的问题,大多数像我这样的小白连门都进不去.最近无意间领会了如何入门,现 ...
- (Linux基础学习)第三章:terminal与shell的简介和修改命令提示符颜色
第1节:terminal终端设备终端:键盘.鼠标.显示器物理终端(/dev/console):控制台console虚拟终端(tty:teletypewriters,/dev/tty# #为[1-6]) ...
- 开源图形库 c语言-图形图像库 集合[转]
开源图形库 c语言-图形图像库 集合[转] Google三维API O3D O3D 是一个开源的 Web API 用来在浏览器上创建界面丰富的交互式的 3D 应用程序.这是一种基于网页的可控3D标准. ...
随机推荐
- Python用法
Python用法 IDE IDE是集成开发环境:Integrated Development Environment的缩写. 使用IDE的好处在于按,可以把编写代码.组织项目.编译.运行.调试等放到一 ...
- 解决FileExplorer窗口变小问题
3.解决FileExplorer窗口变小问题 须在$HOME/.vimrc中添加: "解决FileExplorer窗口变小问题 let g:bufExplorerMaxHeight=30 l ...
- JVM的内存区域
Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域, 包含程序计数器.虚拟机栈.本地方法栈.Java堆.方法区(运行时常量池).直接内存等,不同的版本会有所差异 各区 ...
- JVM调优之探索CMS和G1的物理内存归还机制
前言: 公司有一个资产统计系统,使用频率很低,但是要求在使用时查询速度快,因此想到做一些缓存放在内存中,在长时间没有使用,持久化到磁盘中,并对垃圾进行回收,归还物理内存给操作系统,从而节省宝贵资源给其 ...
- Hadoop值Partition分区
分区操作 为什么要分区? 要求将统计结果按照条件输出到不同文件中(分区).比如:将统计结果按 照手机归属地不同省份输出到不同文件中(分区) 默认 partition 分区 /** 源码中:numRed ...
- [leetcode]python 448. Find All Numbers Disappeared in an Array
Given an array of integers where 1 ≤ a[i] ≤ n (n = size of array), some elements appear twice and ot ...
- 手把手带你入门 Spring Security!
Spring Security 是 Spring 家族中的一个安全管理框架,实际上,在 Spring Boot 出现之前,Spring Security 就已经发展了多年了,但是使用的并不多,安全管理 ...
- MVC WebApi 实现Token验证
基于令牌的认证 我们知道WEB网站的身份验证一般通过session或者cookie完成的,登录成功后客户端发送的任何请求都带上cookie,服务端根据客户端发送来的cookie来识别用户. WEB A ...
- python List交集、并集、差集
工作中遇到了求两个集合的差集,但是集合集合中包含字典,所以使用difference方法会报错,看了一些别人的博客,整理了一下. 1. 获取两个list 的交集print list(set(a).int ...
- Linux/UNIX编程:使用C语言实现简单的 ls 命令
刚好把 Linux/UNIX 编程中的文件和IO部分学完了,就想编写个 ls 命令练习一下,本以为很简单,调用个 stat 就完事了,没想到前前后后弄了七八个小时,90%的时间都用在格式化(像 ls ...