QtQR Icon

QtQR 1.4 Released

About QtQR 1.4

I’m glad to announce that since this morning, python-qrtools and QtQR are both available in their 1.4 version for download in the daily PPA (https://launchpad.net/~qr-tools-developers/+archive/daily)

The 1.4 version includes several bug fixes, support for saving the generated codes in several image formats besides PNG (with the collaboration of Joanthan Greig), no crashes when trying to decode from webcam and there is no webcam attached, support for “WiFi Networks” QR codes and a lot more!

What is coming next?

There won’t be anymore updates to the 1.4 version, don’t expect a QtQR 1.5. The next step is a complete rewrite of both the qrtools backend and, in consequence, of QtQR also. This will be the 2.0 version.-


New Feature for QtQR 1.3

QtQR IconAs asked by an Italian friend that posted a review on his blog (link). I’ve implemented Drag&Drop decoding support for QR Codes images directly from a website in QtQR.

You can see this in action in the following video:

You can expect this feature to be available in the daily PPA or wait for the stable release.

EDIT: Just if you don’t know, you can drag&drop to a QtQR dekstop launcher like showed in the next video, in this manner you don’t even have to open QtQR previusly to decode a file.

Any thoughts, bugs or feature request are more than welcome!

How to install QtQR in Fedora


QtQR 1.0/1.1/1.2 has the following dependecies:

  • PyQt4
  • qrencode
  • python-imaging (PIL or Python Image Library)
  • python-zbar
Sadly, the last one of these is not available to install via the yum package manager, or maybe it is in some repo I don’t know about. If you know where to find it please tell in the comments.


For installing PyQt4, qrencode and PIL you can use yum like this (remember to login or run as root):
yum install pyqt4 qrencode python-imaging

Once you got them installed you can go on installing python-zbar using easy_install:

easy_install zbar

If you get an “error: Setup script exited with error: command ‘gcc’ failed with exit status 1” error, you need to install the zbar-devel package first, like this:

yum install zbar-devel

And there you go.. now you can download the sourcecode from Launchpad, decompress and run QtQR with the following command:

cd <dir of qtqr sourcecode>
python qtqr.py


In summary, this are the commands you need to run (as root) to get QtQR working:

(enter root password)
yum install pyqt4 qrencode python-imaging zbar-devel
easy_install zbar

Tested in Fedora 15, but if you find any difficulties please let me know in the comments.. happy hacking! 🙂

Traduciendo QtQR :-)

Como ustedes saben, QtQR está escrito utilizando el excelente framework Qt4, mediante sus bindings Python PyQt4; resulta que como parte de este framework viene una excelente utilidad llamada Qt4 Linguist que, teniendo la precaución de marcar los strings para ser traducidos, nos permite traducir nuestra aplicación al idioma que queramos sin grandes inconvenientes.. 🙂 y, además, detecta solo el idioma que tiene que aplicar.. 😀
Les dejo una screenshot de QtQR con su interfaz en español para que me crean:

QtQR en Español
Interfaz de QtQR en Español (Argentina)

Prometo actualizar el post con una mini indicación de cómo hacerlo en tu propia aplicación.. 😉

UPDATE: Como les prometí me puse a escribir como traducir aplicaciones Qt4, pero me quedó muy largo, asi que hice un post aparte: https://ralgozino.wordpress.com/2011/06/26/como-traducir-aplicaciones-qt4/

Que lo disfruten!

Introducing QtQR: a QR Code generator and decoder.

DISCLAIMER: Este post va en Inglés.. pronto lo paso al español.. Sepan disculpar.

What is QtQR?

QtQR is an graphical application for creating QR Codes easily; It also let’s you decode a QR Code stored on an image file or scan a printed one with your webcam.

…a QR what?

I don’t know, ask the japanese guys.. all I can say is that a QR Code is a two-dimensional barcode that looks something like the image below. According to the Wikipedia:

QtQR logo

QR Code used as logo for QtQR

“A QR code (short for Quick Response) is a specific matrix barcode (or two-dimensional code), readable by dedicated QR barcode readers and camera phones. The code consists of black modules arranged in a square pattern on a white background. The information encoded can be text, URL or other data.
Common in Japan, where it was created by Toyota subsidiary Denso-Wave in 1994, the QR code is one of the most popular types of two-dimensional barcodes. QR is the abbreviation for Quick Response, as the creator intended the code to allow its contents to be decoded at high speed[…]”

That’s for the formal definition, basically the QR Codes are useful for sharing a lot of information with a simple scan. They are used by the marketing guys for example in publicity. You can put an url, all your contact info, a predifined e-mail message, a sms message, a telephone number and anything you can think of on a QR code and anyone with a modern phone (not necessary a smartphone) can scan the code with the phone’s camera and decode all the data.

Say you want to make a personal presentation card with your contact information like your name, address, e-mail and phone number. You can put all that into a QR code, print it in the back of the card and instead of copying by hand your number a client can scan the code with his phone. 🙂 are you starting to like them?

There are several alternatives for creating a QR Code: websites, smartphone applications and there is even a command line application for Linux called qrencode. QtQR is a GUI front end for the latter made in Python and PyQt4.

QtQR 1.0

QtQR started as a simple wrapper for the command line program qrenconde inspired by a blog post. You can still download it from the google code page. Then I added the decoding feature using zbar; you can see how it worked in the following screencast:

At the same time David Green started to work on a GTK based GUI, so we got in contact and joined forces. From this the QR Tools project was borned; QR Tools project formed by:

  • python-qrtools: a library for creating and decoding QR Codes.
  • QtQR: a Qt4 based GUI.
  • QR Code Creator: a GTK based GUI.
In python-qrtools we work together with David making the core functions that I use in QtQR; you can even download the library and use it in your own projects to create or decode QR Codes.

The next step was to add templates for encoding text, urls, email address, sms and telephone numbers; setting qrenconde parameters and the capability to decode using a webcam. This realease was called QtQR 1.0. You can see a screenshot below.

QtQR 1.0 Screenshot
QtQR 1.0 Screenshot

at that moment QtQR was covered by OMG! Ubuntu! and got a lot of interest from the community. Right now we are working on the 1.2 version of QtQR, fixing bugs and adding features.

Sigue leyendo