[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[libcaca] the AAlib competition



   Hey there. I had a look at the AAlib API and did a list of what they
have and that we lack, what they do slightly better than us, or simply
what they have and is worth mentioning.

   o  dithering modes: none, error distribution, Floyd-Steinberg; for all
      those methods, random noise can be added through an extra parameter.
      We can already do all of this, except the extra random factor.

   o  showcursor/hidecursor/gotoxy functions for the keyboard cursor. If
      we do something like that, we should be aware of double width chars.

   o  built-in mouse pointer (we have something like that in test/demo
      but of course it only works with X11 and GL).

   o  brightness (0-255) and contrast (0-127) functions for the bitmap
      to text routines, and negative rendering

   o  aa_edit: a text edit widget

   o  two different bitmap to text routines, one being labeled "fast". I
      don't know the difference yet. But their rendering algorithm
      outperforms ours for various reasons, including the fact that they
      have foreknowledge of the font glyphs.

   o  ability to load external fonts into the engine. Only really useful
      if we allow on-the-fly driver changes.

   o  save formats: nhtml, html, html_alt, ansi, text, more, hp, hp2,
      irc, zephyr, htmlk. I don't know yet what they all do.

   o  output drivers: curses, DOS, Linux, slang, stdout, stderr, X11,
      os2vio. No idea what stdout and stderr are for, but they probably
      do exactly what our network driver outputs (slightly improved
      ANSI to work on most terminals).

   As you can see, some of the things we did (ANSI and IRC output) or
planned to do (text edit widget) aren't that stupid after all. We're
just 8 years behind :-)

-- 
Sam.
-- 
This is the libcaca mailing-list, see http://sam.zoy.org/libcaca/
Trouble unsubscribing? Please contact <sam@zoy.org>
List archives are at http://sam.zoy.org/libcaca/threads.html