qrcode can produce PNG output, however the ebuild has no dependency on a python image library such as pillow.
From a quick look at the source (particularly setup.py, and some of the readme), qrcode doesn't actually need any imaging library (though you can't export images without one), so a dependency on python-imaging or pillow would be superfluous. With the current setup.py, you could do 'pip install qrcode', and pip would not attempt to install python-imaging or pillow. I think the better solution here would be an elog in pkg_postinst suggesting to install python-imaging or pillow if it is not already installed.
A quick look at the ebuild may give a tip: # optional deps: # - dev-python/lxml for svg backend # - virtual/pil for PIL backend I was aware of the deps. However, we don't have any sane way of expressing optional deps, so they are kindly waiting for a new EAPI in a comment.
commit 9e276c984be1309437d2356c63752ac96d14bb57 Author: Justin Lecher <jlec@gentoo.org> Date: Wed Nov 11 11:12:26 2015 +0100 dev-python/qrcode: Use optfeature to point to optional deps Gentoo-Bug: https://bugs.gentoo.org/show_bug.cgi?id=500742 Package-Manager: portage-2.2.23 Signed-off-by: Justin Lecher <jlec@gentoo.org> https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e276c984be1309437d2356c63752ac96d14bb57