-
大小: 14.15MB文件類型: .zip金幣: 1下載: 0 次發(fā)布日期: 2023-07-14
- 語言: C/C++
- 標(biāo)簽:
資源簡(jiǎn)介
用C語言完成的,將png格式和jpeg格式的圖片顯示出來,以及轉(zhuǎn)化為bmp格式的功能,其中還附加了一些圖片放大縮小和圖片旋轉(zhuǎn)的小功能
代碼片段和文件信息
/*程序功能:顯示jpeg,png型圖片,將jpeg,png型圖片轉(zhuǎn)化為bmp型
??編程人:李佳旭,學(xué)號(hào):U201313809
??????????尹力驍,學(xué)號(hào):U201313829
?*/
#include?
#include?
#include?
#include?
#include
#include?“pub/osg.h“
#include?“pub/system_drv.h“
#include?“pub/keymap.h“
#include?“pub/keyboard.h“
#include“jpeg_to_bmp.h“
#include“png_to_bmp.h“
#include“show_jpeg_picture.h“
#include“show_png_picture.h“
enum
{
MSG_PGDOWN
MSG_PGUP
MSG_KeyUP
MSG_KeyDOWN
MSG_KeyLEFT
MSG_KeyRIGHT
MSG_KeyTAB
MSG_KeyRETURN
MSG_KeySHIFT
};
typedef?struct?_T_Message
{
INT32U?param0;
INT32U?param1;
INT32U?param2;
INT32U?param3;
}T_Message;
UINT32?Test_queueID;
INT8S??*File[100];
INT32U?FileIndex=0;
INT8S??acPath[200] acMask[200]acFile[200]soundpath[200];
//-------------------------------讀取jpeg的任務(wù)------------------------------------------------------
void?demoTask(void)
{
T_Message RecvMsg;
long done;
struct?_finddata_t???fileinfo;???
int?num=0;
getcwd(soundpathsizeof(soundpath));
sprintf(soundpath?“%s\\sound“soundpath);
getcwd(acPath?sizeof(acPath));
sprintf(acPath?“%s\\picture“acPath);
sprintf(acMask?“%s\\*.JPG“acPath);
done=_findfirst(acMask?&fileinfo);
if(done!=-1)
{
GFMDrawRectangle(00720580?0xff2F4F4F?1);//創(chuàng)建畫布
FNTDrawText(0xff20B2AA2450?300?fileinfo.name?);
sprintf(acFile?“%s/%s“?acPath?fileinfo.name?);//獲取了文件名稱
}
PlaySound(“start.wav“NULLSND_FILENAME?|?SND_ASYNC);//語音提示操作方法
while(1)
{
DTOS_DRV_ReceiveMessage(?Test_queueID?&RecvMsg);
switch(RecvMsg.param0)
{
case?MSG_PGDOWN:
break;
case?MSG_PGUP:
break;
case?MSG_KeyUP:
break;
case?MSG_KeyDOWN:
num=1;
if(done?!=?-1)
{
if(_findnext(done?&fileinfo)==0)
{
sprintf(acFile?“%s/%s“?acPath?fileinfo.name?);//獲取文件名稱
}
else
{
done?=?_findfirst(acMask?&fileinfo);
if(done?!=?-1)
{
sprintf(acFile?“%s/%s“?acPath?fileinfo.name?);//獲取文件名稱
}
}
}
show_jpeg_picture(acFile);
????FNTDrawText(0xff20B2AA24400550?fileinfo.name?);
break;
case?MSG_KeyLEFT:
break;
case?MSG_KeyRIGHT://按RIGHT健讀取下一個(gè)文件
GFMDrawRectangle(00720580?0xff2F4F4F?1);
PlaySound(NULLNULLSND_FILENAME?|?SND_PURGE);//隨時(shí)終止語音
num=0;
if(done?!=?-1)
{
if(_findnext(done?&fileinfo)==0)
{
GFMDrawRectangle(5030066924?0xff2F4F4F?1);
FNTDrawText(0xff20B2AA2450?300?fileinfo.name?);
sprintf(acFile?“%s/%s“?acPath?fileinfo.name?);//獲取文件名稱
}
else
{
done?=?_findfirst(acMask?&fileinfo);
if(done?!=?-1)
{
GFMDrawRectangle(5030066924?0xff2F4F4F?1);
FNTDrawText(0xff20B2AA2450?300?fileinfo.name?);
sprintf(acFile?“%s/%s“?acPath?fileinfo.name?);//獲取文件名稱
}
}
}
break;
case?MSG_KeyTAB://按TAB鍵顯示picture文件夾里的前十個(gè)圖片名稱
{
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-12-06?13:18??picture?switch\
?????文件????????1525??2013-01-27?03:50??picture?switch\jconfig.h
?????文件???????15227??2014-10-19?17:02??picture?switch\jmorecfg.h
?????文件???????51035??2014-10-19?17:02??picture?switch\jpeglib.h
?????文件????????5986??2014-12-04?15:01??picture?switch\jpeg_to_bmp.h
?????目錄???????????0??2014-12-06?13:23??picture?switch\libjepg\
?????目錄???????????0??2014-12-06?13:22??picture?switch\libjepg\Debug\
?????文件???????18717??2014-12-06?13:20??picture?switch\libjepg\Debug\ansi2knr.obj
?????文件????????5007??2014-12-06?13:21??picture?switch\libjepg\Debug\cdjpeg.obj
?????文件???????37786??2014-12-06?13:21??picture?switch\libjepg\Debug\cjpeg.obj
?????文件???????17099??2014-12-06?13:20??picture?switch\libjepg\Debug\ckconfig.obj
?????文件???????37577??2014-12-06?13:21??picture?switch\libjepg\Debug\djpeg.obj
?????文件????????7477??2014-12-06?13:21??picture?switch\libjepg\Debug\example.obj
?????文件????????3793??2014-12-06?13:21??picture?switch\libjepg\Debug\jaricom.obj
?????文件???????11034??2014-12-06?13:21??picture?switch\libjepg\Debug\jcapimin.obj
?????文件????????6364??2014-12-06?13:21??picture?switch\libjepg\Debug\jcapistd.obj
?????文件???????20567??2014-12-06?13:21??picture?switch\libjepg\Debug\jcarith.obj
?????文件???????11404??2014-12-06?13:21??picture?switch\libjepg\Debug\jccoefct.obj
?????文件???????16160??2014-12-06?13:21??picture?switch\libjepg\Debug\jccolor.obj
?????文件???????13098??2014-12-06?13:21??picture?switch\libjepg\Debug\jcdctmgr.obj
?????文件???????33735??2014-12-06?13:21??picture?switch\libjepg\Debug\jchuff.obj
?????文件????????4879??2014-12-06?13:21??picture?switch\libjepg\Debug\jcinit.obj
?????文件????????5970??2014-12-06?13:21??picture?switch\libjepg\Debug\jcmainct.obj
?????文件???????21722??2014-12-06?13:21??picture?switch\libjepg\Debug\jcmarker.obj
?????文件???????21950??2014-12-06?13:21??picture?switch\libjepg\Debug\jcmaster.obj
?????文件????????5727??2014-12-06?13:21??picture?switch\libjepg\Debug\jcomapi.obj
?????文件???????21231??2014-12-06?13:21??picture?switch\libjepg\Debug\jcparam.obj
?????文件???????10085??2014-12-06?13:21??picture?switch\libjepg\Debug\jcprepct.obj
?????文件???????15141??2014-12-06?13:21??picture?switch\libjepg\Debug\jcsample.obj
?????文件???????11364??2014-12-06?13:21??picture?switch\libjepg\Debug\jctrans.obj
?????文件???????12257??2014-12-06?13:21??picture?switch\libjepg\Debug\jdapimin.obj
............此處省略222個(gè)文件信息
評(píng)論
共有 條評(píng)論