Gnome Scan 0.5.93

February 27, 2008


I’m very pleased to announce the availability of Gnome Scan 0.5.93. It’s a very good release, it’s not 0.6 only because i want to wait until hard code freeze in order to get more translation, and feedback. This annoucement include 0.5.92 version which was released monday.

  • Clean preview handling allowing to use hardware capability
  • Manual page orientation handling
  • Use 75.dpi as hardcoded resolution, this is more common accross backend.
  • Accurate preview area ROI selection using real rather than integer.
  • Fixed preview acquisition progress bar not shown (regression).
  • Fix lots of ref/unref leaks both GeglBuffer and widgets
  • Automatic per app option saving in GConf
  • Automatic color enhancement.
  • Use a waiting cursor if probing in background.
  • Dropped buggy printing in flegita.
  • About dialog is back.
  • Depends on GEGL 0.0.16 (this won’t change until 0.7.1).
  • Reworked and completed documentation, needs some tutorial, but API is not stable enough for that.

Without color enhancement



With color enhancement enabled

As you can see, there is tons of bug fixes, 0.5.9X are really beta version, even if the API and internal code are meant to change in the future, i wanted to get a stable version enough for production. Please test it and translate it ! :D

SVN has new tooltip API and minor changes. I plan only to document that all, fill bugs for next version and plan the future. 0.6 will be in time for Gnome 2.22 :)


Finally 0.5.4 with rotation

January 15, 2008


After holidays and slow work, if finaly release 0.5.4 including processing infrastruture and rotation. There is other enhancement and bug fixes detailed in the NEWS file. This release is in sync with GEGL r1840. GEGL might provide a 0.0.16 release for march, i wish Gnome Scan 0.6 will arrive sync in march.

Thanks to Gnome wonderful admins, i now have access to Gnome FTP. install-module is a pretty handy tool ! So now, the download site is You’ll find tarballs in Packages are already uploaded to my PPA.

Please report test it and report bugs. I know this release has some bugs and i wish to get it stable for march. I want to add PDF output and that should be ok for 0.6. The rest will be bug fixes. I prefer to reject features for 0.8 (more processing, etc.). I might update AbiScan for use with 0.6 and latest ocropus, but nothing sure.


Delaying Gnome Scan 0.6

September 25, 2007

Hi everyone,

With the availability of 2.20, i took the time to consider Gnome Scan inclusion into Gnome. My main concern about that is that Gegl is unstable, both API and behaviour. I decided not to propose Gnome Scan for inclusion. I rather decided to follow Gnome timeline. This mean that 0.6 won’t land for Christmas, but rather for February/March 2008. Thus, i will implement a bit more feature than planned like options saving/restoring.

There is some good news in gnome-scan development for the past few days. I solved some bugs and reworked the processing mecanism. Now Gnome Scan build a unique Gegl pipeline an launch it. To achieve this goal, i commited a new Gegl operation : “convert-format” and fixed some other bugs in “save-buffer”. The next step is to design “processor” plugin to hook between scanner and sink.

I’m a very proud Gegl user and (tiny) contributor. This is the magic of libre software. Related project are not frozen, you can always contribute in order to these project more suitable for other projects :).

Expect some more news about Gnome Scan in the following days :)

I don’t kill !

September 1, 2007


Waiting for a full Gnome blog, i made an endorsment on the subject of Gnome Scan blog. Just to post lyrics of a song from Nerf Herder. This is about Miguel problem with vegetarianism :

« I don’t kill and I don’t murder
And I don’t eat meat
And I don’t eat vegetables, no no no

‘Cause I only eat candy »

You got the answer ! Stop kills the vegetable ! :D

Hi everybody,

I was away the past week and did not work very much on Gnome Scan. I met with Lionel Dricot and Raphaël Slinkx at Louvain-la-Neuve. Funny :) I’m just back to home and checking out mails, RSS, and such.

Weekly Report

The past two weeks were busy on various improvements in Gnome Scan, particularily printing (using GtkPrint). I added the codebase to handle multiple actions (mail to come soon). That’s not that easy since GtkPrint is not flawless for use in such special case : configure scan and print ; acquire and print. It’s more used for a workflow like configure>scan>configure>print.

Final Report

No doubt this Soc has been ful of new features and improvements for Gnome Scan, however, there is place for lot of development.

The bad

  • I still didn’t reach the 0.6 stage (i.e. all feature from Gnome Scan 0.4.1 reimplemented).
  • No real processing at all (rotation, deskew, gamma, etc.). I would like to use CPU only where hardware fail this is one reason why i didn’t implemented it yet.
  • I need another project (temporarily named libgnocr) in order to provide a modular OCR API and UI (primarily on top of OCRopus). Contribution are welcome.
  • Preview is not stable nor optimized.
  • Page Orientation is not yet handle (Adding button is not enough for adding a feature :/).
  • Memory leaks.
  • Printing suck (yet).
  • Documentation is incomplete (but we have screenshots).
  • I didn’t attend at GUADEC 2007 :(

The goods

  • Far far far better SANE support.
  • Far far far better scanner handling (no more hardcoded options, etc.).
  • Multi threaded (no news about thread safe, comments welcome)
  • Gegl based for effective huge image handling
  • AbiScan : the power of Gnome Scan and OCRopus in Abiword
  • Flegita Gimp : You can use Gegl in Gimp yet !
  • Preliminary printing support
  • Preview acquisition monitoring
  • Modular preview area
  • Module loading system, allow to install/uninstall backend (e.g. choosing twain/SANE; removing file, etc.)

I’m not satisfied with my amount of work during august. Well, i plan to work fulltime on Gnome Scan next week. Also, is should code a bit this week. :) Gnome Scan is about 12000 lines of code (excluding headers).

The best thing was contact with other people. First with Vincent Untz, my mentor, which was very distant, except when i need him :). Then come all developers from external project like Gegl, OCRopus, AbiWord. The same for #gnome-hackers and various GIMPNet chan members. All that people must receive a hertlich thank from me. The same goes to user for their very important feeback (Merci Jean-François Fortin !) also you, dear reader and commenter.

Merci et à bientôt !


E Ultreïa !

Choosing an OCR system

August 10, 2007

Hi everybody,

According to comments on my last post about the state of OCR in Gnome, I fill the need to clarify the situation about supporting or not proprietary software.

Manifest: Gnome Scan is part of Gnome and thus, part of GNU. Yes, Gnome Scan has GNU in its name, and that’s not for fashion. Gnome Scan goal is to provide a libre scan infrastructure for the GNU OS on top of Gnome (rocking) technologies Gtk+, GEGL, etc. Gnome Scan also uses non GNU free software such as SANE for accessing scanners and yet OCRopus for OCR.

Someone would say : « why choosing OCRopus ? OCR-Shop or IRIS Toolkit or rocks ! »

Yet free OCR engine are years behing proprietary software ; right. However, using proprietary solution won’t help them. Paying for a SDK for adding value to proprietary software without even receiving incoming is just crazy ! It’s up to their respective company to provide support for their software. Please don’t complain that i don’t use your proprietary software. I really accept the fact that Gnome OCR must make room for every OCR engine, just because no one is perfect (especially libre ones).

Comment on supporting different OCR engine is rightful. Taking this feedback in account, I plan to build an API for Gnome OCR just like GtkPrint do for printing, and Gnome Scan for scanning; i.e. in a modular fashion. This change from my preliminary plan to provide this library in OCRopus itself. However, i’m pretty sure i will only support OCRopus. Just like SANE in Gnome Scan up to 0.4, Gnome Scan use OCRopus and only OCRopus (i.e. hardcoded) for OCR. Even worst, AbiScan itself uses directly OCRopus. That’s experimental solution, comments are welcome.

Asking for a libre OCR API is very important. That’s one value of Gnome Scan. OCRopus and libre OCR engines needs love. Don’t refuse them what they need ;)

I wish everyone understand my point of view and Gnome Scan goals, without fearing commenting. Feedback makes me happy :).


State of OCR in Gnome

August 7, 2007

Hi everybody,

My work on flegita-gimp does not mean i forgot OCR which is, IMHO, the first class feature of scanning. Writing AbiScan clears my vision on how to design Gnome OCR UI. Before writing AbiScan, i was wondering how to integrate OCR in Gnome Scan. I was really worried because Gnome Scan is designed to pass image (as GeglBuffer) to application, not text or HTML or wathever OCR output format. I decided to write AbiScan and use ocropus directly instead of through Gnome Scan.

This lead me to find the way Gnome will receive OCR and OCR UI. AbiScan use ocropus command line tool, the idea is to use a library providing common OCR UI instead. This library should be ship by OCRopus. Why OCRopus and not Gnome Scan ? Because i think this library depends more on OCRopus and not on Gnome Scan. I may provide an OCR sink in Gnome Scan which help pluging Gnome Scan and OCRopus, but that’s not all the UI and OCR interaction part which should heavily rely on OCRopus itself, just like OCRopus command line tool.

Publishing AbiScan seems to have revealed questions from users. At the risk of repeating OCRopus website, let me explain a bit of OCRopus. OCRopus is not an OCR engine. OCRopus is a document analysis and OCR system. Instead of rewriting its own OCR engine, it uses existing one, especially tesseract, but more are to come. The difference between OCRopus and an OCR engine is exactly the same as between HTML and plain/text. HTML contains semantic, formatting and test itself while plain/text contains only … text ! So, if ever you read a comparision between OCRopus and e.g. gocr or ocrad, you can laught at it. Well, in fact, ocrad has a minimal layout analyser for text column, but that’s not as advanced as OCRopus layout analyser.


New flegita-gimp for r400

August 7, 2007

Hi everyone,

I rewrote flegita-gimp on top of Gnome Scan 0.5.2. It’s in SVN for the 400th revision ! This was very easy to write this plugin, reusing code from the previous one. Once thing to notice, it’s the first ever use of Gegl inside the Gimp ! Keep in mind that Gegl is designed as the future of Gimp. In the future, Gnome Scan and Gimp should speek natively using GeglBuffer, but for Gimp 2.3, i had to translate GeglBuffer into the GimpPixelRgn.

Using GeglBuffer allow to manipulate unlimited sized image from high res scan (given there is no memleak). I wonder if that make sense to add advanced option such as layer opacity or layer mode. I already add a field entry allowing to name the field. This avoid to rename the field after scan. Feedback welcome.

I provide a screencast video using flegita-gimp 0.5.2 showing the two features provided by the plugin : scan as new image and scan as layer. flegita-gimp should receive improvments like better integration with undo/redo action.

If you want to test it, that’s easy (compared to AbiScan) :

  1. install Babl and Gegl from SVN
  2. install Gimp 2.3 or SVN
  3. install Gnome Scan SVN
  4. launch the Gimp and use /File->Acquisition->Scan or /File->Scan as Layer to trigger the plugin.

This is the second plugin on top of Gnome Scan. I’m quite happy with that. Gnome Scan is really cool to use. It really needs debugging and polishing, but the API actually rules.


AbiScan Preview

August 6, 2007

Hi all,

Resulting in about one week of lazy effort, i reach to produce a preliminary version of AbiScan on top of OCRopus. I produced a screencast video of direct OCR import into Abiword Frame. This is very buggy, but very exciting too :).

I must thanks #abiword people, especially Dominic Lachowicz, Marc Mauer, Martin Sevior, jean, sum1 and Hubert Figuière. Thanks goes to OCRopus and Gegl people for their work and advices.

I provide AbiScan patch against abiword-plugins SVN. The plugins does not work if abiword use G_MODULE_BIND_LAZY flags, this is a bug in abiscan, not abiword. I provide a patch against abiword SVN removing g_module_open flags, but it will hopefully never be merged.

If you want to try it, follow the following steps :

  1. Install tesseract-ocr from SVN, with the patch i provide in tesseract BTS ;
  2. Install ocropus ;
  3. Install Gegl SVN ;
  4. Install Gnome Scan SVN ;
  5. Install abiword SVN with g-module-open-flags.diff patch ;
  6. Install abiword-plugins SVN with abiscan.diff patch ;
  7. Launch Abiword
  8. Launch Insert > Import from scanner and follow the steps.

Warning : that’s really buggy.

  • Gnome Scan does not handle device list very well if you launch several times the dialog.
  • OCRopus does not provide any API, so the plugin use system() and isn’t able to monitor progress. OCRopus might take very long time.
  • Sometimes, it eats tons of memory.
  • Currently, it lose formating, that’s due to a HTML import pasteFromBuffer() bug. I had to make a choice between paste into existing document losing formating, or open directly tmp OCRopus HTML directly.

Bug reports are very welcome, please file bugs to gnome-scan product in Gnome bugzilla, for the abiscan component. Note that OCRopus prefer 150dpi images.

Anyway, that’s a rought draft with the key feature provided by Gnome Scan and OCRopus : tight integration into application and advanced OCR.



E Ultreïa !

Back from scouting

July 30, 2007

Hi all Gnome lovers,

I’m back from 17 days of scouting in nature. This was great. I published some photos of the camp at Faye in Nièvre. I came back last friday and was exhausted.

I didn’t resumed yet Gnome Scan development. I’ll take the time to think the future of Gnome Scan, espcially OCR. Sadely, there were not that much work on OCRopus during the past 3 weeks. I wonder how to pass data to the application. OCRopus output is in HTML with OCR tags. That’s useful but not very clean. I wonder how to integrate that in AbiWord.

So, my plan for the end of the summer is to implement OCR, rotation, Gimp and Abiword plugin.