Gnome Scan Weekly Report 2007/05/21



Hi all,

This week, Gnome Scan saw a lot of improvements. I first make it
suitable for desktop installation and even packaged it for ubuntu feisty
i386 : repos is deb http://bersace03.free.fr/ubuntu feisty universe . I
added a --disable-debug ./configure option. One time i will add icons,
but that's not the most important thing right now. Gnome Scan received
some translations from gnome-i18n in English, Swedish and Spanish.

Plugin param spec has received a lot of improvements. They are now
translated, ordered, and dynamically show/hide (instead of
build/destroy/rebuild all widgets). Also ParamSpec now have unit
property (e.g. dpi, mm). A lot more ParamSpecWidget are now
implemented : Range (scale+spin), Enum (combo), Boolean (check), String
(entry), Number (spin) and Area (PreviewArea). Well, AreaWidget has a
really preliminary implementation.

I also added a widget_type property to ParamSpec which allow to use
external widget to select the param value. ParamWidget is now a base
class and each ParamSpec has an independant class. Plugin parameters is
now modular. This is a key point for extending GnomeScan when writing
scan plugin for your App.

GnomeScanParamWidget is now much more independent. Instead of just
carrying value, it handles plugin and settings communication. This
burden was previously held by GnomeScanDialog. now a
GnomeScanParamWidget automatically store value in settings upon set,
update UI if settings changed and trigger plugin configuration on value
setting. All generic for all ParamWidget.

Internally, GnomeScan now use the great GeglBuffer instead of GdkPixbuf
to store acquired data and process them. The main difference is that
GeglBuffer does not store all image in memory. This allow to represent
an image of 11G even if your computer only have 2G of RAM. Very useful
for high res scan. I sent a patch to Gegl. Thanks Øyvind Kolas !

In GSane, the SANE backend, i implemented a preliminary version of
MetaParameters. MetaParam allow to gather a bunch of basic param into
one high level param. E.g. to specify scan area, SANE use 4 option :
tl-x (top left x coordinates), tl-y, br-x (bottom right …) and br-y.
MetaParam take those options and create a "area" Param which contains a
GeglRectangle. MetaParam can also be use to workaround backends quirks
(since they are numerous).

GSane now truly acquire data. I implemented 1, 8 and 16 bit per sample
color acquisition in one or three pass. (some scanners send RGB,RGB,RGB
while other send RRR,GGG,BBB or BBB,RRR,GGG, …). I still have to
implement Grey 1,8 and 16 and three pass 1 bit. Anyway, i already
support much more cases than gnome-scan 0.4 (which supported only RGB
8bit in one or three pass).

GnomeScanDialog now automatically show/hide tabs. I added also a
preliminary Preview tab with the preliminary "area" param. The General
tab now have a populated "scanner option" options group. I plan to add
"Format" option group too.

Gnome Scan SVN now implements mass acquisition. GSane backend does not
support this yet due to SANE limitation. I plan to add a timeout before
automatically call "Next" scan. This will allow to trigger mass
acquisition scan with Flatbed without clicking on next. The software
will wait e.g. 15 seconds in order you to put the next paper in the
flatbed. You will still be able to click on Next. Such feature exists in
XSane. Suggestion welcomes.

Sorry if it was too technical/internal. I'm pretty confident i will be
able to produce an alpha release during June with almost equivalent
features than gnome-scan 0.4.

Regards,
Étienne.
-- 
Verso l'Alto !




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