Rather than implementing this ourselves (1+k lines of code, several large data tables), this uses ZXing as an (optional) dependency, making the implementation straightforward.
ZXing as a dependency is also interesting as it contains support for all other formats as well, potentially allowing us to use it instead of the other external dependencies. ZXing is larger than those, but it's also used in other KDE code already, unlike qrencode and libdmtx.
PDF417 support is needed by Itinerary.