Je me demandais s'il est possible de créer un QR dans un format de fichier, dites PNG, puis coder le PNG en QR, de sorte que le QR résultant est le même que vous avez commencé? P>
4 Réponses :
Je ne pense pas. Chaque code QR doit encadrer les données d'origine avec des quantités variables de redondance. P>
Pour encoder le code QR d'origine, vous avez besoin d'encoder la même quantité d'informations et de licenciements supplémentaires, ce qui signifie que le résultat ne peut pas être identique car il code plusieurs informations. P>
Un code QR peut contenir max. 4296 caractères. Je suppose que c'est unicode, et que deux octets sont utilisés pour représenter un caractère. Cela signifie qu'un code QR peut contenir un maximum de 7089 octets, qui suffit à stocker une petite image (comme un petit code QR). P>
Le seul problème ici, c'est que la plupart des lecteurs QR s'attendent à ce que les codes QR contiennent du texte (et non des données d'image). p>
qrencode -o newqr.png `chat originalqr.png` fonctionne sur Linux, mais je n'ai pas essayé de le décoder pour voir s'il met hors des données PNG non corrompues. La réponse de FreeSpace suggère que cela ne serait pas ...
Pas Unicode, le code QR peut stocker jusqu'à 2953 octets. 4296 est alphanumérique seulement (moins de 8 bits par char).
Il existe différentes tailles de codes QR allant de 21x21 à 177x177. Ils peuvent contenir n'importe où de 152 à environ 31 000 bits de données. Malheureusement, même en utilisant 1 bit par "pixel", la quantité de données qu'un code peut contenir ne touche jamais le nombre de bits nécessaires pour la stocker. p>
Il y a des tailles, cependant, pour laquelle il n'est pas loin. J'imagine un simple algorithme de compression, ou peut-être même ignorer des parties communes comme les zones d'étalonnage pourraient atteindre un point où vous pouvez stocker une certaine représentation en soi. Il est réalisable pour moi que vous pourriez trouver un moyen de stocker un code QR de quelque taille en tant que code QR de la même taille. P>
Le problème construit alors un code qui se crée. Avec différentes options de correction d'erreur, il y a de la place pour fudger quelques pixels autour, ce qui aide la probabilité qu'une telle chose soit possible, mais cela prendrait toujours un peu de magie. Peut-être qu'une sorte d'algorithme génétique pourrait faire mieux que la force brute, mais vous devrez peut-être lire la spécification complète et construire une intelligemment à la main. L'espace de recherche est assez grand. P>
comme freespace em> mentionné, il n'est pas possible d'encoder une image dans la même image elle-même, pour plusieurs raisons. P>
J'ai créé un code QR contenant une URL contenant (à nouveau) l'image d'origine: p>
Je pense vraiment que c'est le plus proche que vous puissiez obtenir. p>
Y compris le contenu du lien rendrait cette réponse utile
Quaxio.com/qrquine A
*. JS code> fichier QR-Codes lui-même
@Darw: perfection. Pas exactement ce que j'ai demandé, mais certainement ce que j'allais pour :)