Code Yarns ‍👨‍💻
Tech BlogPersonal Blog

How to install and use FreeImage

📅 2014-Feb-11 ⬩ ✍️ Ashwin Nanjappa ⬩ 📚 Archive

FreeImage is a simple library that can be used for reading and writing image files. If you have to read and write BMP, JPG or PNG files, then this is one of the easiest ways to do that. It has APIs available in C, C++ and .Net.

Install

Installing FreeImage on Ubuntu is easy:

$ sudo apt-get install libfreeimage3 libfreeimage-dev

Use

For C++ code, you can use the FreeImagePlus API, which is a C++ wrapper around the C API. Here is a simple example that reads a PNG image using the fipImage class:

#include <iostream>
#include <FreeImagePlus.h>

int main()
{
    fipImage img;
    img.load("foobar.png");

    std::cout << img.getWidth() << " " << img.getHeight() << std::endl;
    std::cout << img.isGrayscale() << std::endl;
    std::cout << img.getBitsPerPixel() << std::endl;

    return 0;
}

To compile code that uses the FreeImagePlus API, link it with libfreeimageplus.so using the directive -lfreeimageplus.

Tried with: FreeImage 3.15.1-1 and Ubuntu 12.04 LTS