sam
59e4d8ccd6
Add a --gamma command to modify the global gamma value. This is a nasty
hack that will hopefully disappear in the future. The default gamma is
now 2.2 again (sRGB approximation).
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2846 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
36438eed8f
Fix headers.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2844 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
jylam
4a41d81ee6
* Moved accessors to their own file, and added a pipi_get_format_name()
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2814 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
jylam
b67fde0e94
* Added Wu-Xaolin antialiased lines (Still lacks RGBA32 transparency code, with a fallback to float for now)
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2777 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
541e0213f7
* Goddammit, this time I'm fixing the f32 to u8 RGB conversion for real.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2775 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
074e339ae3
* pixels.c: fix a bug in the f32 to u8 RGB conversion.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2774 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
f3a19b6ce5
* pixels.c: allow to call pipi_getpixels with PIPI_PIXELS_MASK_C.
* pixels.c: simplify Floyd-Steinberg coefficients.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2773 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
23bd005f9c
* pipi.h: add the PIPI_PIXELS_MASK_C pixel format for canvas boundaries.
* pipi.h: rename RGBA32 and BGR24 into RGBA_C and BGR_C.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2772 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
7263c34dad
* pixels.c: temporarily set internal gamma to 1.0 so that I can compare
results with tools that ignore the sRGB gamma.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2768 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
f6f7cbc060
* pixels.c: fix uninitialised w and h in pipi_getpixels.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2728 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
a17c6753e3
* pixels.c: store byte length and bits-per-pixel value in the pipi_pixels_t
structure.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2667 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
99d8af784e
* pixels.c: support more conversion combinations.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2655 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
36da8b05dd
* pixels.c: fix a typo in the dithering method that could cause crashes.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2636 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
eea9f9b829
* pixels.c: start supporting grayscale images.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2633 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
0d8f01566b
* pixels.c: add support for 24-bpp BGR format.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2630 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
caba836e5d
* pixels.c: clamp pixels in the float32 -> rgba32 conversion to avoid
artifacts.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2620 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
e15f20a316
* pixels.c: add Floyd-Steinberg dithering to the float32 -> rgba32
conversion.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2616 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
0105b6f3b6
* pixels.c: speed up the RGBA32 -> float32 conversion, using a simple LUT.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2609 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
31328a14aa
* Big API reorganisation. Now libpipi can transparently convert between
colour spaces for a given image. For instance, if pipi_gaussian_blur is
applied to a 32-bpp image, it is automatically converted to gamma-corrected
32-bit floats beforehands, then converted back to normal.
* TODO: clipping, regions of interest, more formats, getpixel macros...
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2605 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
1871465283
* pixels.c: do not return a white pixel when calling getpixel() outside
the image boundaries; instead, return the closest pixel in the image.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2602 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
d8aa3a24c3
* getpixel/setpixel functions use doubles instead of ints for now.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2260 92316355-f0b4-4df1-b90c-862c8a59935f
16 vuotta sitten
sam
7a2b8fcc65
* Resizing in libpipi is now gamma-aware.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2247 92316355-f0b4-4df1-b90c-862c8a59935f
17 vuotta sitten
sam
53aa513e3e
* Import image loading features from PWNtcha. As they are more than 4-year
old, they will certainly require some cleanup, eg. pkg-config transitions.
git-svn-id: file:///srv/caca.zoy.org/var/lib/svn/libpipi/trunk@2228 92316355-f0b4-4df1-b90c-862c8a59935f
17 vuotta sitten