python开发_imghdr_图像格式支持

在python中,imghdr模块对图像格式提供了支持

该模块主要是处理识别图像的格式

imghdr模块提供的函数如下:

1 imghdr.what(filename, h=None) 
2        Tests the image data contained in the file named by filename, and returns a string describing the image type. If optional h is provided, t         he filename is ignored and h is assumed to contain the byte stream to test.
1 imghdr.tests 
2       A list of functions performing the individual tests. Each function takes two arguments: the byte-stream and an open file-like object. When         what() is called with a byte-stream, the file-like object will be None.
3 
4       The test function should return a string describing the image type if the test succeeded, or None if it failed.

以下的图像格式可以被识别:

ValueImage format
'rgb' SGI ImgLib Files
'gif' GIF 87a and 89a Files
'pbm' Portable Bitmap Files
'pgm' Portable Graymap Files
'ppm' Portable Pixmap Files
'tiff' TIFF Files
'rast' Sun Raster Files
'xbm' X Bitmap Files
'jpeg' JPEG data in JFIF or Exif formats
'bmp' BMP files
'png' Portable Network Graphics

=====================================================

以下是我做的demo:

=====================================================

 1 #python imghdr
 2 
 3 #Author   :   Hongten
 4 #Mailto   :   hongtenzone@foxmail.com
 5 #Blog     :   http://www.cnblogs.com/hongten
 6 #QQ       :   648719819
 7 #Version  :   1.0
 8 #Create   :   2013-09-09
 9 
10 import os
11 import imghdr
12 
13 #global var
14 #image path
15 IMG_PATH = None
16 
17 __author__ = ['Hongten']
18 
19 def get_ext(path):
20     '''return a string describing the image type.'''
21     if os.path.exists(path):
22         return imghdr.what(path)
23     else:
24         print('the path [{}] dose not exit!'.format(path))
25 
26 def init():
27     global IMG_PATH
28     IMG_PATH = 'C:\\test\\hongten.jpg'
29 
30 def main():
31     init()
32     img_ext = get_ext(IMG_PATH)
33     print('the image : [{}],and the type is :[{}]'.format(IMG_PATH, img_ext))
34 
35 if __name__ == '__main__':
36     main()

运行效果:

the image : [C:\test\hongten.jpg],and the type is :[jpeg]

更多参考:

http://blog.sina.com.cn/s/blog_a04184c101010kt2.html

posted @ 2013-09-09 11:01  Hongten  阅读(3942)  评论(0编辑  收藏  举报
Fork me on GitHub