Ethumb will use Evas to generate thumbnail images of given files. The API allows great customization of the generated files and also helps compling to FreeDesktop.Org Thumbnail Specification (http://specifications.freedesktop.org/thumbnail-spec/thumbnail-spec-latest.html)
However, thumbnailing can be an expensive process that will impact your application experience, blocking animations and user interaction during the generation. Another problem is that one should try to cache the thumbnails in a place that other applications can benefit from the file.
Ethumb Client exists to solve this. It will communicate with a server using standard D-Bus protocol. The server will use Ethumb itself to generate the thumbnail images and cache them using FreeDesktop.Org standard. It is recommended that most applications use Ethumb Client instead of Ethumb directly.
Ethumb is a library your application links to. The procedure for this is very simple. Note that usually you want the D-Bus client library. You simply have to compile your application with the appropriate compiler flags that the
pkg-config script outputs. For example:
Compiling C or C++ files into object files:
gcc -c -o main.o main.c `pkg-config --cflags ethumb_client`
Linking object files into a binary executable:
gcc -o my_application main.o `pkg-config --libs ethumb_client`
After you understood what Ethumb is and installed it in your system you should proceed understanding the programming interface.