API References
GIMP comes with libraries which can be used by plug-in developers to
enhance their usage of the software. This page lists documentations for
the Application Programming Interfaces (API) of these libraries:
- GIMP 2.0 API: for 2.0 up to 2.10.
- GIMP 3.0 API: for
3.*series.
Additionnally you may want to use some of the following interfaces:
- Babl API: GIMP's pixel encoding and color space conversion engine.
- GEGL API: GIMP's image processing engine.
- GTK, Pango, GdkPixbuf and more…: more dependencies
used by GIMP and
libgimp.
Offline API references
Download
If you don't want to read the API documentation online, you may also
download the source tarballs from our download
server. They contains
pre-generated API documentation in HTML format in
devel-docs/libgimp*/html/ folders.
On distribution, the API reference HTML may also be provided with the
development package or as separate packages. For instance, on Debian,
the package libgimp2.0-doc would usually be the one containing these
files.
For GIMP 3.0, the pre-generated documentation will be in a dedicated tarball.
Generate
If you wish to generate them, as part of your development process, here is the procedure, as part of the rest of the building procedure:
GIMP 2.10
-
Configure with
If you got the sources directly from the git repository rather than a tarball, use--enable-gtk-docand--enable-gtk-doc-app:autogen.shinstead of configure.The parameters have the following meaning:
--enable-gtk-doc: use gtk-doc to build documentation--enable-gtk-doc-app: build developer documentation for app (not only thelibgimp*libraries).To find out more parameters, run
configure --helpGIMP_PREFIXis a variable for the directory you will install GIMP in, as explained in the Building GIMP page. -
Build GIMP normall:
-
Find the generated documentation:
-
From the desired subdirectory open the file
index.htmlfor an overview of that module.
GIMP 3.0
Meson build system
Similarly the meson build provides the option -Dgi-docgen=enabled to
make sure the documentation built by gi-docgen are enabled. These are
the main documentation for the libgimp and libgimpui APIs.
We also have a -Dg-ir-doc=true option which will build language
specific API with yelp and g-ir-doc-tool, for some of the languages
supported by GObject Introspection. We are still pondering whether these
documentation really bring much, over using the main API references and
some per-language tutorial explaining how to port each calls to specific
bindings.
Manual g-ir-doc generation
This is what -Dg-ir-doc=true does internally. You might want to
reproduce these steps for another language binding, to generate and
browse libgimp API docs, for a language binding, from your local GI
repository:
This assumes you are a builder, have installed tools for GObject
Introspection such as g-ir-doc-tool, have installed the GNOME help
tool yelp, and that when you built or installed GIMP, it created the
.gir files.
-
Run:
The parameters have the following meaning:
--language=Python: generate docs for Python programmers (try C, Lua, JS, ... ?)-o <path>: where to store the output document (in .xml format)/usr/...: the .gir xml file to generate docs from (try Gegl-1.0, Babl-1.0, ...) -
Run: