VC6.0平台JPEG图片读写

1. 实验目的

(1)编译JPEG-8C参考软件。

(2)学会使用JPEG-8C提供的可执行文件进行简单的JPEG解压缩。

(3)在Microsoft Visual C++ 6.0环境下进行读写JPEG格式文件实验,了解并熟悉基本的JPEG文件解压缩和压缩处理方式。

2. 实验环境

(1)Windows XP OS

(2)IJG参考软件JPEG-8C

(3)Microsoft Visual C++ 6.0

3. 实验步骤

Ⅰ 下载及编译JPEG-8C参考软件

(1)下载JPEG-8C

登录IJG官方网站http://www.ijg.org/,根据网站提示下载Windows压缩格式的源代码包jpegsr8c.zip,这个版本是目前的最新版本。下载到硬盘上解压,将会在安装目录下出现文件夹jpeg-8c,里面包含了jpeg的源代码、说明使用文档以及一些测试图片。

(2)编译JPEG-8C参考软件

IJG支持多平台下的应用,不同平台下的编译安装细节都可以在install.txt中找到。在此,我以Microsoft Visual C++ 6.0作为平台进行编译。

① 开始编译前首先需要将jconfig.vc更名为jconfig.h 。

② 开始—运行—键入cmd,进入命令行模式。在命令行下进入到Microsoft Visual C++ 6.0的安装目录下的bin文件夹,在其目录下有一个名为vcvars32.bat的批处理文件,在命令行下运行这个批处理(键入vcvars32.bat,回车),这个批处理的作用是注册VC6.0相关的一些环境变量,这样在任何系统目录下都可以使用VC6.0提供的工具。然后不要关闭当前命令窗口,进入到IJG的安装目录./jpeg-8c下,执行命令NMAKE /f makefile.vc。也就是开始编译IJG库,在屏幕迅速闪过一些编译信息后,如果没有错误出现,IJG也就编译完成。编译完成后,IJG的安装目录下会出现若干文件,我们所需要的是一个叫做libjpeg.lib的静态库文件,在编译我们程序的时候链接使用。除此一般还要用到4个头文件,jconfig.h、jerror.h、jmorecfg.h、jpeglib.h。当然,目录下还会有一些可执行文件,是IJG提供的工具程序,稍后进行介绍。

(3)开发环境配置

在VC6.0下使用IJG之前首先要让VC能够找到那四个头文件并链接到libjpeg.lib的静态库文件,我们对开发环境做一下配置,如下:

① 进入VC6.0 — 工具 — 选项 — 目录 — include files下添加jpeg-8c的路径 — Library files下添加 jpeg-8c的路径

② Project — Add to Project — Files,添加libjpeg.lib到工程中去。

至此,配置步骤完成,于是就可以开始用IJG写程序了。

Ⅱ 使用参考软件提供的可执行文件进行JPEG解压缩

在jpeg-8c编译成功后,会生成5个可执行文件:cjpeg.exe、djpeg.exe、jpegtran.exe、 rdjpgcom.exe、wrjpgcom.exe。其中我们可以使用cjpeg.exe和djpeg.exe进行比较简单的JPEG解压缩操作。

① cjpeg.exe的简单使用

cjpeg [选项] 图像文件 jpg图像文件

通过该命令可以将图像文件压缩为jpg格式的图像,目前支持的图像文件格式有:PPM (PBMPLUS color format),PGM (PBMPLUS gray-scale format),BMP,GIF,and RLE (Utah Raster Toolkit format)。

我们可以通过选项-quality N(0~100)来设置压缩比率,如:cjpeg –quality 50 testimg.bmp testimg.jpg ,即以压缩率50%将testimg.bmp压缩为testimg.jpg 。

该命令的使用仍是在命令行模式下进入jpeg-8c目录下,键入命令实现。

② djpeg.exe的简单使用

djpeg [选项] jpg图像文件 jpg图像文件

通过该命令可以将jpg图像文件解压为所支持的图像格式。我们要通过选项来设定解压的格式,也可以使用-colors N(8以上)设定使用色彩的个数。

如:djpeg –bmp –colors 256 tes

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值