我想问一下:
    JPEG,MPEG,h.263等压缩图像怎么去加密,对于这些格式不是太了解。bmp的我知道可以通过文件头BITMAPFILEHEADER和信息头BITMAPINFOHEADER得到文件的大小,宽度和高度,但是压缩图像文件的大小,宽度,高度又用什么结构体来获得呢?渴望有高手予以帮助,小弟的分不多了,十分麻烦了。

解决方案 »

  1.   

    加密和压缩,解密和解压缩都是完全不同的,
    加密,解密是指针对某种程度的隐秘的算法进行的。而压缩解压缩是必须得到标准的算法。
    JPEG之类,可以压缩后加密,但这是两个过程。还是JPEG为例,它是针对“便于计算机显示和表达的位图文件”的压缩算法。虽然只是一个名称,算法就好几种国际标准,可细分为JPEG名下的小类别。如果想做全了,还真不容易。找现成的算法封装类比较现实。如果想学习,找资料吧,不过那也不是一两页纸能说明白的,要化大量的时间。JPEG的功能,简单说就是对位图文件转换,然后按照子类别中相应算法给出结果,效果是把位图文件中大量的重复数据用几个简单字节表达出位置,这样就节省了描述图象的数据总量。
    呵呵。这些是我的理解。结构体与BMP位图文件完全不同,具体看书吧。
      

  2.   

    你指的是标识码?确实,标识码存储着文件宽度高度,和各种文件特征的信息。JPEG的标识码要比BMP复杂和不轨反的多。你如果只是想从中获取JPEG这类压缩文件的宽、高和总量,对于了解文件结构,没什么大意义。如我上面说的,这类压缩文件的结构很复杂,与位图文件完全不同,其核心是变换和反变换,压缩和解压缩算法。参考这篇文章吧,临时搜到的,他只讲了JPEG的一种构造,JPEG有无损压缩和有损压缩,还有IBM ,JPEG2等国际标准。作者只是讲了JPEG文件反变换算法的一种实现框图。但确实讲了JPEG标识码的结构。
    http://www-scf.usc.edu/~flv/ipbook/chap09.htm