vs---easyX中loadimage函数与putimage函数

本文介绍了在VS环境下使用easyX库中的loadimage和putimage函数。loadimage用于加载bmp、jpg等格式的图像,putimage则用于将内存中的图像输出到屏幕,支持COPY_PUT、XOR_PUT等多种输出方式,适用于图形绘制和动画制作。

头文件graphics.h

 void far initgraph(int far *graphdriver, int far *graphmode, char far *pathtodriver)

一般使用方法initgraph(300,500);生成300*500即(宽*高)的图形

功能: 函数putimage()将一个先前保存在内存中的图像输出到屏幕上。

用法: 此函数调用方式为void putimage(int left,int top,void *buf,int ops);

说明: 参数(left,top)为输出屏幕图像的左上角,即输出图像的起始位置。buf指向要输出的内存中图像。参数ops控制图像以何种方式输出到屏幕上。一般只用前三个参数。表1-13给出了图像输出方式。 

输出方式符号名   

 取值含  义
COPY_PUT0图像输出到屏幕上,取代原有图像
XOR_PUT1图像和原有像素作异或运算
OR_PUT2图像和原有像素作或运算
AND_PUT3图像和原有像素作与运算
NOT_PUT4 把求反的位图像输出到屏幕上

1) COPY_PUT输出方式

图像中每个像素都直接绘制到屏幕上,取代原有图像像素,包括空白的图像像素(背景)。完全空白的图像可以用来擦除其它图像或屏幕的一部分。但通常选择xOR_PUT输出方式擦除原有图像。

2)XOR_PUT输出方式

原有屏幕每个像素与相应的图像字节作“异或”运算,其结果画到屏幕上。当某一图像和屏幕上原有图像作“异或”运算时,屏幕显示的是两个图像的合成。若相同的图像作异或运算,将有效地擦除该图像,留下原始屏幕。这种输出方式,对动画制作是非常有用的。

3)OR_PUT输出方式

每个图像字节和相应的屏幕像素作“或”运算,再将结果画到屏幕上,这种输出方式也叫“两者取一”。记住,像素中的每位和图像中的每位作“或”运算,这样所得结果是背景和图像的彩色合成图像。

4)AND_PUT输出方式

选择AND_PUT图像输出方式时,屏幕像素和图像字节中都显示的位,运算后仍显示,例如,星图像中的空白背景擦除了方块轮廓以及填充色,只有星图像复盖着的方块留下,即运算后,显示两者相同的图像。

5)NOT_PUT输出方式

NOT_PUT输出方式,除了把图像的每位求反---图像中所有黑的像素(0000)变成了白色(1111),其它方面与COPy_PUT相同。背景图像被重画后将消失。

2.loadimage()

loadImage()是一种函数,功能是装载图标,光标,或位图。支持bmp,jpg,gif,emf,wmf,ico格式

// 从图片文件获取图像
void loadimage(
    IMAGE* pDstImg,        // 保存图像的 IMAGE 对象指针
    LPCTSTR pImgFile,        // 图片文件名
    int nWidth = 0,        // 图片的拉伸宽度
    int nHeight = 0,        // 图片的拉伸高度
    bool bResize = false    // 是否调整 IMAGE 的大小以适应图片
);

// 从资源文件获取图像
void loadimage(
    IMAGE* pDstImg,        // 保存图像的 IMAGE 对象指针
    LPCTSTR pResType,        // 资源类型
    LPCTSTR pResName,        // 资源名称
    int nWidth = 0,        // 图片的拉伸宽度
    int nHeight = 0,        // 图片的拉伸高度
    bool bResize = false    // 是否调整 IMAGE 的大小以适应图片
);
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值