zoukankan      html  css  js  c++  java
  • 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:	esthongten.jpg],and the type is :[jpeg]

    更多参考:

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

  • 相关阅读:
    设计模式笔记(22)状态模式(行为型)
    设计模式笔记(16)解释器模式(行为型)
    Lable和Literal控件的使用和区别
    设计模式笔记(15)命令模式(行为型)
    设计模式笔记(25)总结
    在JS方法中返回多个值的三种方法
    SQL 左外连接,右外连接,全连接,内连接
    面试集萃
    ASP.NET MVC如何使用Ajax的辅助方法
    ASP.NET MVC+EF框架+EasyUI实现权限管理(附源码)
  • 原文地址:https://www.cnblogs.com/hongten/p/hongten_python_imghdr.html
Copyright © 2011-2022 走看看