The RC0 release is out since the last hackweek see GFXprim pages. From that point 187 patches with various fixes, new features and new tests went in. New features includes support for various file formats, fixes and enhancements in python bindings, speedups, CMYK support, better documentation and more. Now it's about the time for RC1.

Gfxprim is simple modular 2D bitmap graphics library with emphasis on speed and correctness.

One of the key points of the library is meta-programming. Most of the operations and filters are written in Jinja templating language that is used to generate specialized code in C programming language. Creating code that works with less usual pixel types should be as easy as adding pixel definition into the configuration and rebuilding the library.

Some of the features are:

  • Supports loading and saving most of the image formats (PNG, JPG, BMP, TIFF, PNM; loading only: PSP, GIF, JPEG2000, CBZ, ...)
  • Can draw lines/circles/polygons (anti aliased drawing is being worked on)
  • Has image filters (resampling, convolutions, point filters, ditherings, ...) some supports running in multiple threads
  • Drawing and input support for X11 (with support for multiple windows), SDL, Linux Framebuffer, AALib, kernel input layer
  • Text drawing with compiled-in fonts or TTF fonts using FreeType
  • V4L2 frame grabbers
  • Python bindings (work in progress, but generally most of the C API is covered at the time)
  • Has number of unit tests

One of the tasks I want to tackle before the RC1 release is to make spiv (image viewer based on the library) to be full featured image viewer. The work has already began with implementation of feh-like actions, code cleanups, better help (-h), cleaner implementation of slideshow timers, etc. What is currently the most missing part is better configuration and handling for zooming.

There are more (smaller) tasks I have in my mind. If anybody wants to give helping hand feel free to contact me or ask on our our mailing list.


[Cyril Hrubis] originated this idea.


GFXprim 1.0.0-rc0 has been released!

You can get the tarball directly from project pages or packages from buildservice.

Now it's time for 1.0.0-rc1 :)

Get the latest Source Code from github.

Looking for hackers with the skills:

c library graphics python

This project is part of:

Hack Week 10



Be the first to comment!

Similar Projects

Improving picotm by tdz

Picotm is a system-level transaction manager. I...

netlink interface for ethtool by mkubecek

There seems to be an overall consensus that the...

dmidecode: no more open-coded printfs by jdelvare

There's a long standing request to extend the o...

ethtool ops for netdevsim by mkubecek

This can be seen as a subproject of [ethtool ne...

make "predictable network interface names" more predictable by mkubecek

Since the so-called "predictable names" for net...

Support for DRM platform drivers by tdz

This project could get us rid of the last fbdev...

Home assistant that doesn't spy on you - developer's edition by DKarakasilis

There are various home assistant solutions out ...

Try to write simple rope-base Python language-server for LSP protocol by mcepl

Future of tools supporting editors in dealing w...

Write a commandline client for the geekos by dheidler

There used to be a tool called tel that would...

openSUSE Leap release process improvements by lkocman


I'd like to have the release proce...