Go to file
Carsten Haitzler 00f60aa331 lots of new image manipulation functions and minor fix in loader module code.
SVN revision: 318
1999-09-18 07:50:37 +00:00
libltdl add operation type to blend ops.. :) 1999-09-14 04:21:29 +00:00
test_images add some more images just to show off :) 1999-09-13 05:32:36 +00:00
COPYING fixed minor bug in png loader.... added copying file :) 1999-08-02 22:50:36 +00:00
Makefile lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
Makefile.am lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
README ooh now imlib2 has a sexy demo for you people :) mmmmm watch the alpha 1999-09-13 01:56:57 +00:00
api.c lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
api.h lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
autogen.sh some mroe echos... 1999-09-15 01:24:27 +00:00
blend.c added updates work.. well starting on it.. :) 1999-09-17 01:31:56 +00:00
blend.h add operation type to blend ops.. :) 1999-09-14 04:21:29 +00:00
color.c more playing with imlib2... :) 1999-09-13 04:06:57 +00:00
color.h flim! :) 1999-08-23 16:55:16 +00:00
common.h adding imlib2 code in.. NOT a lib yet... :) but playable code and loader 1999-08-01 22:14:11 +00:00
configure.in added Gary V. Vaughan's patches for libtool loader stuff and now its all 1999-08-05 21:51:50 +00:00
context.c get rid of printfs i dont need no more :) 1999-09-13 05:34:50 +00:00
context.h flim! :) 1999-08-23 16:55:16 +00:00
draw.c add operation type to blend ops.. :) 1999-09-14 04:21:29 +00:00
draw.h adding color modifier api backend stuff.... :) 1999-08-28 18:18:29 +00:00
file.c adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00
file.h adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00
grab.c lots more work on mr imlib2 :) 1999-09-08 17:27:40 +00:00
grab.h lots more work on mr imlib2 :) 1999-09-08 17:27:40 +00:00
image.c lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
image.h remember to not free images made form external data if it wasnt copied.. and 1999-09-01 17:36:17 +00:00
loader_jpeg.c jpeg loader added that does everything RIGHT - needto mapk the png loader 1999-09-10 18:11:47 +00:00
loader_png.c ooh now imlib2 has a sexy demo for you people :) mmmmm watch the alpha 1999-09-13 01:56:57 +00:00
main.c lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
rend.c added updates work.. well starting on it.. :) 1999-09-17 01:31:56 +00:00
rend.h add operation type to blend ops.. :) 1999-09-14 04:21:29 +00:00
rgba.c more playing with imlib2... :) 1999-09-13 04:06:57 +00:00
rgba.h flim! :) 1999-08-23 16:55:16 +00:00
rgbadraw.c lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
rgbadraw.h lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
scale.c adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00
scale.h adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00
updates.c lots of new image manipulation functions and minor fix in loader module code. 1999-09-18 07:50:37 +00:00
updates.h added updates work.. well starting on it.. :) 1999-09-17 01:31:56 +00:00
ximage.c adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00
ximage.h adding the start of an actual aip layer... if you have any comments about 1999-08-04 23:36:07 +00:00

README

Imlib 2.0 pre pre pre pre alpha toy code...

the wuick way:
./configure
mkdir ~/.loaders
mkdir ~/.loaders/image
make install
(ignore the make failed error - thats fine)
./imlib2

you'll get a window up with a big bg and little igns in an array - they
follow your mouse around..

notice....
alpha-blended shadow on top & leftof window
notice soft shadows under icons
notice the speed :)
notice that imlib si actually re-loadng ALL of these images continuously
from disk (just alook at the code) (well ok not the bg one) - the image
caching works and is taken full advantage of .. its also delayed loading -
it'll only decode the data to images you need :)

WARNING!

this isn't even a library yet - it's a single program thats modularised to
become a librayr once it's all debugged.

what you DO have here is:

color allocation & adjustment code  - if in 8bbp or less it will cose the
larges colorcube it can that fits in your available colormap space - right
now the code uses the default colormap, but if you look at color.c carefully
you'll see the code will not be hard to change (have prefercnes as to size
of colorcube etc.)

does alpha blending onto any X drawable with any colormap.
does ``high quality'' rendering with dithering available for all modes up to
16bpp (1bpp, 8bpp, 15bpp, 16bpp).

probably has nasty endianess problems.

has VERY VERY VERY fast rendering code.
has anti-aliased scaling up and down code.

has a modularised loader system (works right now - but still possible
changes might have to be made)
simple to get this going:
mkdir ~/.loaders
mkdir ~/.loaders/image
cp png.so ~/.loaders/image
cp jepg.so ~/.loaders/image

you just installed the png loader - it's theonly one i've written and it
isnt very good (comments in code - load.c) but it works.
you also installed the jpage loader :)

the laoder system automagically updates yhe loaders were you to dump new
files there or overwrite the old ones to any program RUNTIME will pick up
the new code.. :) you dont even have to restart the program.. OOH what joy :)
the image caching is all there and the pixmap caching backend is there too.
there is nothign to generate pixmaps yet - that has yet to come (it will use
the rendering code in rend.c).

things that still need to be worked on:
* colormodifiers (to do gamma etc. correction - need to develop a new system
wherby i can uniquely tag pixmaps with a colormodifier ID for caching
properly).
* border scaling - you know - like E does now for buttons etc.
* saving functions
* image manipulation funcitons (flip, rotate, scale etc of original data)
* a new name for imlib2.0 - 2.0 just sounds boring :)
* more loader / saver modules for ppm, pgm, pgm, xpm, tiff etc...
* RGBA drawing area - basically a RGBA buffer with RGBA buffer ops written
(copyarea, poasteimage, fillrect, drawline, drawtext etc. so you can have a
little virtual RGBA framebuffer - also will include rectangle os ineterst
updating mechanism (so anly the parts of the RGBA buffer that were drawn to
are drawn and updated to the scren).
* more flim!