Hello all !

Tomorow begin the final project evaluation. This is one more reason to release the exciting version 0.2 of gnomescan !

Notes

  • Beware this is still an alpha release.
  • this version has been tested against gtk 2.10 and cairo 1.2 (cairo-pdf). I should reasonnabily work with gtk2.8, but cairo-pdf is required.
  • Please uninstall previous version, or old documentation will remain.
  • Please report bugs and patches at bersace03 at laposte dot net.
  • If you have any ideas for a rocking gnome scan experience, put them on the GnomeScan wiki !

Links

Overview

  • Localisation finaly enter the game. I translated to french, this allow me to commente string and make string easy to translated (no splitted string, avoid pango tags, etc.).
  • A new widget allow to choose scan resolution.
  • First plugin implemented : flegita-gimp which allow to scan in new image and scan as layer ! The plugin set default scan resolution to the image resolution or default resolution. But allow to manually set resolution using the new resolution widget.
  • The overal UI has been review in order to have HIG and consistent margins. The save as popup dialog has been replaced by a widget in the main dialog that allow to choose action (only save is available, Sent and Print are planned) and choose the format between PNG, JPEG, TIFF and …. PDF !!! Thanks to cairo-pdf backend 🙂
  • The preview widget has be rewrite in order to improve performance. The selection is now nicer and far more faster to render. (Thanks to #cairo people). Scrolling with mouse wheel is now supporte, both vertical and horizontal direction. And the most wanted Rotation feature !
  • GnomeScanUI provide new and improves icons for buttons and devices. Thanks to the Tango/ArtLibre project. GnomeScan no longer use “xsane” icons … 🙂

Under the hood

  • A lot of usefull enums are now declared in the GType system using glib-mkenum (which makes me some headhaches in collaboration with autotools).
  • New widget: GnomeScanAdvancedPreview. Used in Gimp plugins. For now, it just draw rulers around preview area which show the size (in centimeters) and the cursor position. Would be nice if the widget tel the exact size of the area.
  • GnomeScanPreview and GnomeScanAdvancedPreview now use GtkToolBar to display buttons in order to follow desktop toolbar policy.
  • libgnomescanui provide the gnome_scan_ui_init() function which declare stock items GS_STOCK_SCAN, GS_STOCK_ROTATE_COUNTER_CLOCKWISE and GS_STOCK_ROTATE_CLOCKWISE and intialize i18n.
  • GnomeScanDialog has been slightly review and use now one GtkHButtonBox with secondary group instead of two GtkHButtonBox inside a GtkHBox.
  • GnomeScanPreviewArea now draw to a buffer when neeed and just output the buffer at expose. It also correctly handle motion hint in order to keep a decent sync between drawing operation and pointer motion.
  • GnomeScanBackend now handle slightly better errors (i.e. does not crash, just jump), still lake some real errors handling.
  • FlegitaActionWidget now handle GdkPixbuf grab and execute the user request on it. If a file exists, it is save to the Filename-%i.png needed. Image are scanned at screen resolution (using a Gdk call), choosing PDF outpur format select 300dpi (which seems to be far too much, i need advice about that). This is how flegita is intended to work : carry option setting without people to know their screen resolution or what means dpi (think that most of the world uses ISO centimeters).
  • pkg-config modules files are provided for libgnomescan (module gnomescan) and libgnomescanui (module gnomescanui).
  • Documentation has been review including GObject hierarchy, chapters and sections, Indexes, True Widget gallery (not only widget screenshot per page). I wrote a ulgy hack, flegita-shoot that take screenshot of widget using Gdk features.
  • I upgraded to edgy on my box which means gtk2.10 and cairo1.2. I don’t try with cairo1.0. I wish this will allow to create a nice print UI 🙂 Scanning an Printing together in Gnome … so nice !

Known bugs

  • On my Canon CanoScan N1220U (plusteck:libusb), the area selection isn’t efficient. Don’t know on other backend/devices.
  • With networked all-in-on printer Hewlett-Packard OfficeJet 7140xi, the devices keep at busy state after the first acquisition (i.e. preview acquisition) until the app is closed 🙁
  • Acquisition progress bar is completely dumb. Don’t trust it !
  • Don’t click the about dialog, it strill segfault !
  • And many more, i’m waiting for reports 🙂

If you have problem with scanning (like ugly pictures, crash, etc.), you can enable verbose output by editing a source file. Remove the #undef g_debug and #define g_debug(…) ((void) 0) lines in libgnomescan/gnomescanbackend.c . Yes that’s not so nice as a –verbose or –debug option, but.

Future

The end of the holidays will surely reduce the rhythm of releases, but i’m very excited about developing and improve the stability of the project. I subscribe to various hosting service like sf.net, gna.org, launchpad.net and freashmeat.net. I also request for a SVN repo at gnome.org and a Gnome maintainer account.

Further development will be made first on GnomeScanBackend in order to get ride of those bugs with many devices. After that, here are functionnality i wish to implement (not in order) :

  • Fixed area (A4, A5, photo, US Letter, etc.)
  • Auto area selection.
  • Zoom.
  • X and Y resolution.
  • Multiple acquisition and multipage PDF output.
  • Sent by mail (with contact completion).
  • Print
  • Fax ?
  • Multiple area per scan.
  • Gamma, contrast
  • A dbus service that handle devices detection and sharing in order to get ride of the waiting dialog (are user waiting so much for printer detection ???).
  • A capplet to configure devices specific options and sharing.
  • Application provided about dialog.
  • AbiWord and gthumb plugins.
  • Split gnomescan (libgnomescan, libgnomscanui, dbus and capplet) and flegita (flegita-gimp, AbiWord and gthumb plugins).
  • And many more you would like to add to the wiki !

Even if that’s out of GnomeScan, i want to mention that I may write one or more backends for SANE. (since my father own almost 9 scanner devices and only 3 are supported). I have a Business card reader. Expect nice plugins for Evolution !

As a conclusion, I would like say i’m very very happy to contribute to Gnome and Free Software. Thanks to Google which allow me to get officially mentored by Gnome and to spend this summer coding for free developers and free users.

Enjoy ! 😀

Étienne.

4 Responses to “gnomescan-0.2: final evaluation”

  1. Pēteris Krišjānis Says:

    What can I say, great to hear about your progress and it is really good to hear that you will continue your way to complete success. Way to go!

  2. Jean-Baptiste Says:

    T’es le meilleur :¬P}.
    Ton frèrôt.

  3. Max Beauchez Says:

    Thanks for all the great work & i hope you will continue the project.

  4. saracen Says:

    Etienne, a simple scanning UI is something that has been sorely lacking in Gnome. I’m very happy to hear that you made a lot of progress over the summer and hope that you will continue making adding features and making it more robust.


Leave a Reply