Saturday, 15 December 2012

KBarcode-kde4 port ready and released

KBarcode has been ported to KDE4/Qt4 by Fanda. Also some of the older bugs related to GUI have been fixed. It seems stable. The new version of KBarcode for KDE4/Qt4 has been renamed to KBarcode-kde4 so that users can have the old KBarcode for KDE3/Qt3 as well as the new KBarcode for KDE4/Qt4 installed on one system.

KBarcode-kde4 uses Akonadi. KCommand and related stuff has been ported to QUndoCommand and so on ... Spellchecking was ported to Sonnet but the new implementation of Sonnet in KBarcode-kde4 is odd and complicated so it will be deprecated and replaced in a future version.

KBarcode-kde4 is currently in a beta stage. It is not in Ubuntu or Debian repositories yet. At the moment (2012-12-14) only a deb package for amd64 architecture exists. Download the deb package kbarcode-kde4_3.0.0b2-1_amd64.deb from and follow instructions in to install it.

The source code can be found in the source tarball at or in the GIT repository at

Thank you very much for your work Fanda!

Wednesday, 12 September 2012

Quality-Check 0.10 released

We releases Quality-Check 0.10 today! The new release includes several new checks such as:
  • Check.instanceOf
  • Check.isNumber
  • Check.isNumeric
  • Check.notNaN

Most importantly you should check-out our enhanced webpage and especially our comparison, where we compare Check with other classes like org.springframework.util.Assert [1] or [2] or org.apache.commons.lang3.Validate [3].

Wednesday, 5 September 2012

Quality-Check for Java

André Rouél and I startet a new OpenSource project to avoid technical errors in Java applications: Quality-Check.

The goal of quality-check is to provide a small Java library for basic runtime code quality checks. It provides similar features to org.springframework.util.Assert or without the need to include big libraries or frameworks such as Spring or Guava. 
The package quality-check tries to replace these libraries and provide all the basic code quality checks.


 * Sets the given object if it is not null.
 * @throws IllegalArgumentException
 *         if the given argument is {@code null}
public void setObject(final Object object) {
    if (object != null) {
        throw new IllegalArgumentException("Argument 'object' must not be null.");
    this.object = object;

can be replaces by:

 * Sets the given object if it is not null.
public void setObject(final Object object) {
    this.object = Check.notNull(object);

It is now available in Maven Central so adding it to your project is as simple as putting these five lines into your pom.xml:

Please take also a look at our webpage or our project at GitHub.

Sunday, 15 July 2012

PoDoFoColor Lua Scripting

sdaau wrote in with some news about podofocolor, I'd like to share:

I just found about podofocolor on - and I got really interested in "Analyzing colors - Find out, which colorspaces or colors are used in a PDF". I couldn't find an example of how to do that on that page, and I assumed the only way to do is through Lua.

Unfortunately, while there are some PPA builds for Ubuntu ( see ), those do not have Lua built-in, so I rebuilt podofo and utils on Lucid, and posted the executables here - since they are statically linked, they may be useful to others as well:

I have also recorded the steps to building those executables in

The above directory also contains a modification of the example.lua script:

... which can be used to simply print out any color encountered in a PDF, by using this command line:

$ ./libpodofo-utils-lucid/podofocolor lua example-colorlist.lua /path/to/mytest.pdf /dev/null

<]/Info 2 0 R/Root 1 0 R/Size 16>>
Processing page 1...
-> Lua is parsing page: 1
Reading object 6 0 R with type: Number
set_non_stroking_color_gray: 1
set_non_stroking_color_cmyk: 0.233887 1 1 0.218994

Note that it is important to add `/dev/null` as output file - otherwise, both the color report _and the pdf in its entirety_ will be dumped to the terminal - making the report about colors impossible to read.

I would have appreciated a lot a similar guide/explanation on the blogspot webpage (or in a help/readme); and I'd be very happy if some of this here can contribute towards more detailed examples in then documentation.

Many thanks for the great software,

The original post can be found here:
If you also have interesting PoDoFo stuff to share, feel free to drop me a mail.

KBarcode KDE4 Port Status Update

Fanda provided some updates on the status of the KBarcode-KDE4 port:

The version tagged as "port-1.0" on works and has the most of the Kbarcode's functionality except a database support. It compiles succesfully with few compile warnings and uses all of the Kbarcode's source files except gnubarkodeengine.cpp and gnubarkodeengine.h . But it still uses QT3 support classes like Q3Canvas, Q3SqlCursor, Q3DataTable, Q3SimpleRichText, etc. I am currently working on porting the QT3 support classes to pure QT4. I have already ported Q3Canvas and related stuff to QGraphicsScene (which proved to be the most difficult porting) but I haven't pushed it to the online repository on yet.
I am so glad to this project to be continued! It looks much prettier than the KDE3 version and even did import my old KBarcode3 label files without any problems.

Want some screenshots? Here you got.