update README

SVN revision: 1111
This commit is contained in:
Carsten Haitzler 1999-11-01 18:05:48 +00:00
parent b0f6b9c07d
commit 157e1305ae
1 changed files with 19 additions and 77 deletions

96
README
View File

@ -1,81 +1,23 @@
Imlib 2.0 pre pre pre pre alpha toy code...
###############################################################################
# #
# I M L I B 2 #
# #
###############################################################################
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!
This is the Imlib 2 library - a library that does load file loading and saving
as well as rendering, manipulation etc. It also does ALL of these FAST and
tries to be highly intelligent about doing it to make writing niaeve programs
that are still very fast.
This is an early stage of its release and thus is Imlib2 0.0.1 - there are
bugs that have to be worked out - primarily ones that might deal with network
rendering, endianess and the lack of loaders.
The src/ directory contains the Imlib2 source itself
The loaders/ directory contains some sample loaders and savers (a loader both
loads and saves a certain format)
The test/ directory contains a test program you can compiel and run after
Imlib2 is installed (runt he test program in the test directory)
The libltdl/ direcotry contains the LGPL licensed source for libtool to enable
loadable module support on all platforms.