概述
该程序使用 FreeImage 来对图像执行旋转操作。FreeImage 是一款免费的开源图形库,它可以用于 Windows,Linux 和 Mac OS X 系统。完整的源代码参见 No.1_FreeImage。
实现
1.获取位图格式
FREE_IMAGE_FORMAT format = FreeImage_GetFileType(image_name);
从位图文件获取位图格式。该函数从位图文件中读取 16 字节内容并对其分析,从而得到位图格式。返回值 FREE_IMAGE_FORMAT
在加载或存储位图文件时,用于标识位图格式,可以是下面的常量值:
FIF | Description |
---|---|
FIF_UNKNOWN | Unknown format (returned value only, never use it as input value) |
FIF_BMP | Windows or OS/2 Bitmap File (*.BMP) |
FIF_CUT | Dr. Halo (*.CUT) |
FIF_DDS | DirectDraw Surface (*.DDS) |
FIF_EXR | ILM OpenEXR (*.EXR) |
FIF_FAXG3 | Raw Fax format CCITT G3 (*.G3) |
FIF_GIF | Graphics Interchange Format (*.GIF) |
FIF_HDR | High Dynamic Range (*.HDR) |
FIF_ICO | Windows Icon (*.ICO) |
FIF_IFF | Amiga IFF (.IFF, .LBM) |
FIF_J2K | JPEG-2000 codestream (.J2K, .J2C) |
FIF_JNG | JPEG Network Graphics (*.JNG) |
FIF_JP2 | JPEG-2000 File Format (*.JP2) |
FIF_JPEG | Independent JPEG Group (.JPG, .JIF, .JPEG, .JPE) |