Is there anything similar to a QR code that works offline?
Say I have a flyer that I want to discreetly distribute and there is no internet.
Is there something like a QR code that contains the data itself and not just a URL?
This way someone with no data plan could scan the icon/code with an app and the unrecognizable bits and bytes from the icon/code would show up on their screen as a .JPEG of a flyer or something.
There are many types of QR code. iirc a single qrcode can contain up to a few kilobytes, but the more data you put in it the more difficult it will be to scan.
so, you could use qrcodes for offline distribution of short text messages or very low resolution images. I think mobile devices’ qrcode scanners will display the contents of TEXT type qrcodes, but they probably don’t have support for decoding an image from one (so such an app would need to be written). you can create TEXT type qrcodes using the
qrencode
tool (packaged in major linux distros) or using websites like https://www.qr-code-generator.com/ (note that I think only their URL and TEXT types are offline; the others upload a file to their servers and make a qrcode containing a URL for it).This qrcode says “Hello”:
This qrcode contains this 88x26 pixel (1467 byte) image:
(created using
cat lemmy.png |base64 |qrencode -o lemmy_qr.png
; can be decoded usingzbarimg lemmy_qr.png |sed 's/QR-Code://'|base64 -d > output.png
. on debian/ubuntu you canapt install qrencode zbar-tools
to get the two required commands.)I didn’t know there was an actual limit to the size of a QR code, but as we see a big problem with (raster) images is that the QR code rapidly becomes much more complex than the image itself
Vector images can be a good fit though! If you can fit a URL in there, a SVG could fit in too :)
I agreed a priori, which, as you probably guessed, is exactly why I put that parenthesis 😀 But I think in practice the starting point already is too complex. For example, I opened inkscape and saved the empty image, the result is already more than 1KB. Similarly, Lemmy’s very simple logo is already 3KB.
SVGs can be minified after edition, but of course nothing will beat hand-crafted SVGs…