ZXing Barcode Generator

Génère des codes-barres et QR Codes avec ZXing pour les développeurs, avec formats, tailles et options d'encodage adaptés aux flux d'impression, d'étiquetage et de documentation.

Tool coming soon!

We're working hard to get this tool ready for you.

Request Feature / Support
832+
Total Calculations Run
< 15ms
Browser Execution Speed
100%
Client-Side Privacy
4.9 / 5.0
User Satisfaction
AI Web Tool Generator

Build Your Own Custom Web Calculator in Seconds

Type what tool or calculator you need below. Our AI will build it instantly for your site.

Popular ideas:
100% FREE • No Credit Card Required

À propos de cet outil

Le ZXing Barcode Generator est un outil axé développeur qui convertit les données d'entrée en formats standard de codes-barres à l'aide d'encodeurs similaires à ZXing. Il prend en charge les QR codes, Code 128, Data Matrix, Aztec, PDF417 et les formats associés, permettant la création rapide d'actifs lisibles par machine pour les produits, l'emballage et les actifs numériques.

Conception : l'outil analyse conceptuellement l'entrée, choisit la voie de codage pour le format demandé et calcule la version symbole nécessaire et la correction d'erreurs (le cas échéant). La sortie est une image vectorielle propre (SVG), adaptée à l'impression haute résolution et à l'utilisation Web réactive. Les utilisateurs bénéficient de sorties prévisibles et évolutives et d'un encodage par format conforme aux normes industrielles. La valeur principale réside dans la combinaison de la polyvalence des formats et d'un contrôle précis de la taille, des marges et du codage des caractères, réduisant le besoin d'outils de codage distincts et permettant une intégration fluide dans les chaînes d'étiquetage et les flux de contenu.

Parmi les principales fonctionnalités figurent la prise en charge multi-format, la validation des entrées par format et les sorties SVG qui préservent la qualité à toute échelle. L'outil vise des résultats propres et sans branding, avec peu de distraction dans le vecteur, à l'exception des métadonnées SVG et <desc> pour l'accessibilité et les outils. Les cas d'utilisation vont des étiquettes produits et billets aux étiquettes d'inventaire et actifs numériques, où une lisibilité robuste est cruciale. La valeur unique provient d'un design API compact qui imite le comportement ZXing tout en fournissant des actifs SVG prêts à imprimer. </div> <div class="pt-6 flex justify-center"> <a href="https://anyonlinetool.com/register" class="bg-white text-slate-900 border border-slate-200 px-8 py-4 rounded-xl font-bold hover:border-blue-500 hover:text-blue-600 transition-all inline-flex items-center gap-3 shadow-sm hover:shadow-md"> Save your calculation history with a free account <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 8l4 4m0 0l-4 4m4-4H3"></path> </svg> </a> </div> </div> </section> <!-- How To Use Section --> <section class="mt-20 max-w-7xl mx-auto"> <div class="flex flex-wrap md:flex-nowrap items-center gap-12"> <div class="w-full md:w-1/2"> <h3 class="text-3xl font-extrabold text-[#030738] mb-6">Comment utiliser</h3> <div class="text-gray-600 leading-relaxed text-lg prose prose-lg"> <ol class="space-y-4 list-decimal pl-5 text-gray-600"><li class="pl-2 leading-relaxed">Entrez les données: chaîne de texte et sélectionnez un format de code-barres (par ex. QR_CODE, CODE_</li><li class="pl-2 leading-relaxed">. Configurez des options facultatives: taille (px), marge (px), encoding (UTF-</li><li class="pl-2 leading-relaxed">et correction d'erreurs (pour QR). Exécutez la génération: envoyez les entrées pour produire une image vectorielle de code-barres. Récupérez la sortie: obtenez le SVG avec une matrice scalable adaptée à l'impression ou à l'intégration. Validez: scannez le code-barres avec un scanner ou une application mobile.</li></ol> </div> </div> <div class="w-full md:w-1/2"> <img class="w-full rounded-2xl shadow-lg border border-gray-100" src="https://anyonlinetool.com/themes/tailwind/images/tool/how-to-use.png" alt="How to use zxing online generator"> </div> </div> </section> <!-- FAQ Section --> <section class="mt-20 max-w-7xl mx-auto"> <h3 class="text-3xl font-extrabold text-[#030738] mb-2 text-center">Frequently Asked Questions</h3> <p class="text-center text-gray-500 mb-10 text-xl">Trouvez des réponses rapides</p> <div class="space-y-4"> <details class="group bg-white rounded-2xl border border-gray-200 p-6 transition-all hover:border-indigo-200 shadow-sm [&_summary::-webkit-details-marker]:hidden"> <summary class="flex justify-between items-center cursor-pointer font-bold text-lg text-[#030738]"> <span>Quels formats sont pris en charge ?</span> <svg class="w-6 h-6 text-indigo-500 transform transition-transform group-open:rotate-180" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path> </svg> </summary> <div class="mt-4 text-gray-600 leading-relaxed pt-2 border-t border-gray-100"> Les formats pris en charge incluent QR_CODE, CODE_128, DATA_MATRIX, AZTEC, PDF_417, EAN_13, UPC_A. Chaque format a sa capacité et ses règles d'encodage; choisissez le format en fonction du type de payload et des exigences d'impression. </div> </details> <details class="group bg-white rounded-2xl border border-gray-200 p-6 transition-all hover:border-indigo-200 shadow-sm [&_summary::-webkit-details-marker]:hidden"> <summary class="flex justify-between items-center cursor-pointer font-bold text-lg text-[#030738]"> <span>Comment garantir la lisibilité ?</span> <svg class="w-6 h-6 text-indigo-500 transform transition-transform group-open:rotate-180" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path> </svg> </summary> <div class="mt-4 text-gray-600 leading-relaxed pt-2 border-t border-gray-100"> Suivez les conseils spécifiques au format: utilisez une taille de module suffisante, définissez une marge raisonnable et appliquez le bon niveau de correction d'erreurs pour les QR Codes. Pour les payloads longs, privilégiez des versions supérieures ou un format compact comme Data Matrix. </div> </details> <details class="group bg-white rounded-2xl border border-gray-200 p-6 transition-all hover:border-indigo-200 shadow-sm [&_summary::-webkit-details-marker]:hidden"> <summary class="flex justify-between items-center cursor-pointer font-bold text-lg text-[#030738]"> <span>Puis-je encoder des caractères non latins ?</span> <svg class="w-6 h-6 text-indigo-500 transform transition-transform group-open:rotate-180" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path> </svg> </summary> <div class="mt-4 text-gray-600 leading-relaxed pt-2 border-t border-gray-100"> Oui, l'encodage par défaut est UTF-8. Pour les formats avec jeux de caractères limités, assurez-vous que la payload respecte les règles d'encodage du format; passer à UTF-8 préserve les caractères non courants. </div> </details> <details class="group bg-white rounded-2xl border border-gray-200 p-6 transition-all hover:border-indigo-200 shadow-sm [&_summary::-webkit-details-marker]:hidden"> <summary class="flex justify-between items-center cursor-pointer font-bold text-lg text-[#030738]"> <span>Puis-je générer des codes en lot ?</span> <svg class="w-6 h-6 text-indigo-500 transform transition-transform group-open:rotate-180" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M19 9l-7 7-7-7"></path> </svg> </summary> <div class="mt-4 text-gray-600 leading-relaxed pt-2 border-t border-gray-100"> La génération en lot est prise en charge en émettant plusieurs requêtes programmées. Chaque requête encode une paire payload-format et renvoie un SVG prêt à être utilisé dans les flux d'étiquetage ou de contenu. </div> </details> </div> </section> <!-- High-converting CTA for free registration on tool page --> <section class="mt-16 max-w-7xl mx-auto bg-gradient-to-r from-blue-50 to-indigo-50 border border-blue-100 rounded-3xl p-8 md:p-12 flex flex-col items-start gap-6 shadow-sm"> <div class="text-left"> <h3 class="text-2xl md:text-3xl font-extrabold text-slate-900 mb-3"> Need to run multiple calculations? </h3> <p class="text-gray-600 text-lg leading-relaxed max-w-4xl"> Create a free account today to unlock unlimited daily runs, access advanced parameters, save your history, and request custom features. </p> </div> <div> <a href="https://anyonlinetool.com/register" class="inline-block px-8 py-3.5 text-white text-center font-bold text-lg rounded-xl shadow-md hover:shadow-lg transition-all duration-200" style="background-color: #2563eb; color: #ffffff; width: auto;"> Register Free Account </a> </div> </section> <!-- Related Tools Section --> <section class="mt-20 max-w-7xl mx-auto text-left"> <h3 class="text-3xl font-extrabold text-[#030738] mb-2 text-center">Related Tools</h3> <p class="text-center text-gray-500 mb-10 text-xl">Other useful calculators and utilities you might like</p> <div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-4 gap-6"> <div class="bg-white rounded-2xl border border-gray-100 hover:border-indigo-100 shadow-sm hover:shadow-md p-6 flex flex-col gap-4 items-start relative transition-all duration-300"> <div class="w-12 h-12 flex items-center justify-center overflow-hidden shrink-0"> <img class="max-w-full max-h-full object-contain" src="https://anyonlinetool.com/storage/category/July2026/developer-tools.png" alt="Developer Tools" loading="lazy" style="max-width: 100%; max-height: 100%; object-fit: contain;"> </div> <h4 class="text-lg font-bold text-[#030738] leading-tight"> Convertisseur Spotify vers MP3 </h4> <p class="text-gray-500 text-sm leading-normal"> Convertit des fichiers audio fournis localement en MP3, permettant l’écoute hors ligne et la compati... </p> <a href="https://anyonlinetool.com/fr/tool/spotify-mp3-convertisseur" class="absolute w-full h-full top-0 left-0 rounded-2xl"></a> </div> <div class="bg-white rounded-2xl border border-gray-100 hover:border-indigo-100 shadow-sm hover:shadow-md p-6 flex flex-col gap-4 items-start relative transition-all duration-300"> <div class="w-12 h-12 flex items-center justify-center overflow-hidden shrink-0"> <img class="max-w-full max-h-full object-contain" src="https://anyonlinetool.com/storage/category/July2026/developer-tools.png" alt="Developer Tools" loading="lazy" style="max-width: 100%; max-height: 100%; object-fit: contain;"> </div> <h4 class="text-lg font-bold text-[#030738] leading-tight"> Calculateur de distance routière </h4> <p class="text-gray-500 text-sm leading-normal"> Calculateur de distance routière pour voyageurs, planificateurs logistiques et conducteurs pour esti... </p> <a href="https://anyonlinetool.com/fr/tool/calculateur-distance-routiere" class="absolute w-full h-full top-0 left-0 rounded-2xl"></a> </div> <div class="bg-white rounded-2xl border border-gray-100 hover:border-indigo-100 shadow-sm hover:shadow-md p-6 flex flex-col gap-4 items-start relative transition-all duration-300"> <div class="w-12 h-12 flex items-center justify-center overflow-hidden shrink-0"> <img class="max-w-full max-h-full object-contain" src="https://anyonlinetool.com/storage/category/July2026/developer-tools.png" alt="Developer Tools" loading="lazy" style="max-width: 100%; max-height: 100%; object-fit: contain;"> </div> <h4 class="text-lg font-bold text-[#030738] leading-tight"> Calculateur d’âge </h4> <p class="text-gray-500 text-sm leading-normal"> Déterminez rapidement l’âge d’une personne à partir de sa date de naissance avec notre calculateur e... </p> <a href="https://anyonlinetool.com/fr/tool/calculateur-d-age" class="absolute w-full h-full top-0 left-0 rounded-2xl"></a> </div> <div class="bg-white rounded-2xl border border-gray-100 hover:border-indigo-100 shadow-sm hover:shadow-md p-6 flex flex-col gap-4 items-start relative transition-all duration-300"> <div class="w-12 h-12 flex items-center justify-center overflow-hidden shrink-0"> <img class="max-w-full max-h-full object-contain" src="https://anyonlinetool.com/storage/category/July2026/developer-tools.png" alt="Developer Tools" loading="lazy" style="max-width: 100%; max-height: 100%; object-fit: contain;"> </div> <h4 class="text-lg font-bold text-[#030738] leading-tight"> Convertisseur de devises </h4> <p class="text-gray-500 text-sm leading-normal"> Convertissez rapidement des montants entre différentes monnaies avec notre convertisseur de devises... </p> <a href="https://anyonlinetool.com/fr/tool/convertisseur-de-devises" class="absolute w-full h-full top-0 left-0 rounded-2xl"></a> </div> </div> </section> <!-- Feedback Section --> <section class="mt-20 mb-20 max-w-3xl mx-auto bg-gray-50 rounded-3xl p-8 md:p-12 text-center" id="feedback"> <h3 class="text-2xl font-bold text-[#030738] mb-2">Votre avis compte</h3> <p class="text-gray-500 mb-8">Aidez-nous à nous améliorer</p> <form method="POST" action="https://anyonlinetool.com/tool/feedback/175419" class="space-y-4 text-left"> <input type="hidden" name="_token" value="9LJCSyD6QqFfYHa7HYJ3NrzFhUP23PXLC23aIBxr" autocomplete="off"> <div> <textarea name="issues" class="w-full rounded-xl border-gray-200 p-4 h-32 focus:border-indigo-500 focus:ring-indigo-100" placeholder="Write your thoughts here..."></textarea> </div> <div class="flex gap-4"> <div class="flex-grow"> <input type="email" name="reported_by_email" class="w-full rounded-xl border-gray-200 p-4 focus:border-indigo-500 focus:ring-indigo-100" placeholder="Votre e-mail" value=""> </div> <button type="submit" class="text-white px-8 py-4 rounded-xl font-bold transition-all shadow-md hover:shadow-lg hover:opacity-95 whitespace-nowrap" style="background-color: #2563eb; color: #ffffff; min-width: 120px;">Soumettre</button> </div> </form> </section> </main> <div class="embed-popup hidden fixed w-full h-full left-0 top-0 bg-black/30 z-50"> <div class="absolute w-[calc(100%-20px)] max-w-2xl aspect-[9/16] md:aspect-video bg-white rounded-lg shadow-md top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 px-6 py-8 flex flex-col gap-6 justify-center"> <div class="absolute right-3 top-3"> <svg xmlns="http://www.w3.org/2000/svg" class="close-popup cursor-pointer w-6" viewBox="0 0 512 512"> <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M368 368L144 144M368 144L144 368" /> </svg> </div> <div> <form action=""> <div class="flex flex-col md:flex-row gap-4"> <div class="w-full md:w-1/2"> <label for="lang" class="text-sm">Langue</label> <select name="lang" id="lang" class="w-full lang-selectize"> <option value="ar-SA" selected >Arabic</option> <option value="da" >Danish</option> <option value="de" >German</option> <option value="en" >English</option> <option value="fr" >French</option> <option value="he" >Hebrew</option> <option value="nb" >Norwegian bokmål</option> <option value="nl" >Dutch</option> <option value="nl-NL" >Dutch</option> <option value="sv" >Swedish</option> <option value="sv-SE" >Swedish</option> </select> </div> <div class="w-full md:w-1/2"> </div> </div> <input type="hidden" name="language" value="en"> <input type="hidden" name="tool" value="zxing online generator"> <input type="hidden" name="url" value="https://anyonlinetool.com"> <input type="hidden" name="license" value="guest_user"> </form> </div> <div class="relative"> <code class="code block px-4 py-3 pr-6 font-mono text-base font-medium text-gray-900 bg-accent/20 rounded-md"> <script src="https://anyonlinetool.com/embed-bucket/aot.js" data-license-key="guest_user" data-lang="ar-SA" data-tool-key="zxing online generator"></script> </code> <button data-copy="copier" data-copied="copié" class="copy-code absolute top-2.5 right-2.5 rtl:right-auto rtl:left-2.5 text-xs cursor-pointer shadow bg-white rounded py-1 px-2"> copier </button> </div> <div class="bg-yellow-100 rounded-md border border-yellow-400 px-2 py-3"> <div class="flex flex-col md:flex-row items-center gap-3"> <div class="flex items-center gap-y-2 gap-x-3"> <svg xmlns="http://www.w3.org/2000/svg" class="w-6 shrink-0" viewBox="0 0 512 512"> <path d="M248 64C146.39 64 64 146.39 64 248s82.39 184 184 184 184-82.39 184-184S349.61 64 248 64z" fill="none" stroke="currentColor" stroke-miterlimit="10" stroke-width="32" /> <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="32" d="M220 220h32v116" /> <path fill="none" stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="32" d="M208 340h88" /> <path d="M248 130a26 26 0 1026 26 26 26 0 00-26-26z" /> </svg> <div class="flex-1"> <p>No website found! Please add a website and obtain a license for improved tracking. It's free! </p> </div> </div> <div class="shrink-0"> <a class="inline-block bg-accent/90 transition-colors duration-150 ease-out hover:bg-accent text-white text-sm px-4 py-2 rounded" href="https://anyonlinetool.com/dashboard/websites">Add Website</a> </div> </div> </div> </div> </div> </main> <!-- Modern Compact Footer --> <footer class="relative text-white overflow-hidden" style="background-color: rgb(22 88 245 / var(--tw-bg-opacity));"> <div class="relative z-10 px-6 pt-10 pb-6 mx-auto max-w-7xl"> <!-- Main footer content --> <div class="grid grid-cols-1 md:grid-cols-3 lg:grid-cols-12 gap-8 mb-8 border-b border-white/10 pb-8"> <!-- Brand Column (Wider on desktop) --> <div class="md:col-span-1 lg:col-span-5"> <a href="https://anyonlinetool.com/fr" class="inline-block mb-4 group"> <img src="https://anyonlinetool.com/themes/tailwind/images/logo.png" alt="Any Online Tool" class="h-8 md:h-10 w-auto transform transition-transform duration-300 group-hover:scale-105" style="filter: grayscale(100%) brightness(0) invert(100%);"> </a> <p class="text-sm text-white/90 leading-relaxed mb-6 max-w-sm"> Your On-Demand Toolbox. Découvrez un monde d'outils, de simulateurs, de calculateurs et d'extensions générés par l'IA et adaptés à vos besoins. </p> <!-- Social Links --> <div class="flex gap-2"> <a href="#" class="w-8 h-8 flex items-center justify-center bg-white/10 rounded-lg hover:bg-white hover:-translate-y-1 transition-all duration-300 group"> <svg class="w-4 h-4 text-white group-hover:text-blue-600" fill="currentColor" viewBox="0 0 320 512"> <path d="M279.1 288l14.2-92.7h-88.9v-60.1c0-25.4 12.4-50.1 52.2-50.1h40.4V6.3S260.4 0 225.4 0c-73.2 0-121.1 44.4-121.1 124.7v70.6H22.9V288h81.4v224h100.2V288z" /> </svg> </a> <a href="#" class="w-8 h-8 flex items-center justify-center bg-white/10 rounded-lg hover:bg-white hover:-translate-y-1 transition-all duration-300 group"> <svg class="w-4 h-4 text-white group-hover:text-blue-400" fill="currentColor" viewBox="0 0 24 24"> <path d="M8.29 20.251c7.547 0 11.675-6.253 11.675-11.675 0-.178 0-.355-.012-.53A8.348 8.348 0 0022 5.92a8.19 8.19 0 01-2.357.646 4.118 4.118 0 001.804-2.27 8.224 8.224 0 01-2.605.996 4.107 4.107 0 00-6.993 3.743 11.65 11.65 0 01-8.457-4.287 4.106 4.106 0 001.27 5.477A4.072 4.072 0 012.8 9.713v.052a4.105 4.105 0 003.292 4.022 4.095 4.095 0 01-1.853.07 4.108 4.108 0 003.834 2.85A8.233 8.233 0 012 18.407a11.616 11.616 0 006.29 1.84" /> </svg> </a> <a href="#" class="w-8 h-8 flex items-center justify-center bg-white/10 rounded-lg hover:bg-white hover:-translate-y-1 transition-all duration-300 group"> <svg class="w-4 h-4 text-white group-hover:text-blue-700" fill="currentColor" viewBox="0 0 448 512"> <path d="M100.3 448H7.4V148.9h92.9zM53.8 108.1C24.1 108.1 0 83.5 0 53.8a53.8 53.8 0 0 1 107.6 0c0 29.7-24.1 54.3-53.8 54.3zM447.9 448h-92.7V302.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V448h-92.8V148.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V448z" /> </svg> </a> <a href="#" class="w-8 h-8 flex items-center justify-center bg-white/10 rounded-lg hover:bg-white hover:-translate-y-1 transition-all duration-300 group"> <svg class="w-4 h-4 text-white group-hover:text-pink-600" fill="currentColor" viewBox="0 0 24 24"> <path fill-rule="evenodd" d="M12.315 2c2.43 0 2.784.013 3.808.06 1.064.049 1.791.218 2.427.465a4.902 4.902 0 011.772 1.153 4.902 4.902 0 011.153 1.772c.247.636.416 1.363.465 2.427.048 1.067.06 1.407.06 4.123v.08c0 2.643-.012 2.987-.06 4.043-.049 1.064-.218 1.791-.465 2.427a4.902 4.902 0 01-1.153 1.772 4.902 4.902 0 01-1.772 1.153c-.636.247-1.363.416-2.427.465-1.067.048-1.407.06-4.123.06h-.08c-2.643 0-2.987-.012-4.043-.06-1.064-.049-1.791-.218-2.427-.465a4.902 4.902 0 01-1.772-1.153 4.902 4.902 0 01-1.153-1.772c-.247-.636-.416-1.363-.465-2.427-.047-1.024-.06-1.379-.06-3.808v-.63c0-2.43.013-2.784.06-3.808.049-1.064.218-1.791.465-2.427a4.902 4.902 0 011.153-1.772A4.902 4.902 0 015.45 2.525c.636-.247 1.363-.416 2.427-.465C8.901 2.013 9.256 2 11.685 2h.63zm-.081 1.802h-.468c-2.456 0-2.784.011-3.807.058-.975.045-1.504.207-1.857.344-.467.182-.8.398-1.15.748-.35.35-.566.683-.748 1.15-.137.353-.3.882-.344 1.857-.047 1.023-.058 1.351-.058 3.807v.468c0 2.456.011 2.784.058 3.807.045.975.207 1.504.344 1.857.182.466.399.8.748 1.15.35.35.683.566 1.15.748.353.137.882.3 1.857.344 1.054.048 1.37.058 4.041.058h.08c2.597 0 2.917-.01 3.96-.058.976-.045 1.505-.207 1.858-.344.466-.182.8-.398 1.15-.748.35-.35.566-.683.748-1.15.137-.353.3-.882.344-1.857.048-1.055.058-1.37.058-4.041v-.08c0-2.597-.01-2.917-.058-3.96-.045-.976-.207-1.505-.344-1.858a3.097 3.097 0 00-.748-1.15 3.098 3.098 0 00-1.15-.748c-.353-.137-.882-.3-1.857-.344-1.023-.047-1.351-.058-3.807-.058zM12 6.865a5.135 5.135 0 110 10.27 5.135 5.135 0 010-10.27zm0 1.802a3.333 3.333 0 100 6.666 3.333 3.333 0 000-6.666zm5.338-3.205a1.2 1.2 0 110 2.4 1.2 1.2 0 010-2.4z" clip-rule="evenodd" /> </svg> </a> </div> </div> <!-- Information Column --> <div class="md:col-span-1 lg:col-span-3"> <h3 class="text-lg font-bold text-white mb-4">Information</h3> <ul class="space-y-2 text-sm"> <li><a href="https://anyonlinetool.com/fr/about" class="text-white/80 hover:text-white transition-colors">About Us</a> </li> <li><a href="https://anyonlinetool.com/blog" class="text-white/80 hover:text-white transition-colors">Latest News</a> </li> <li><a href="https://anyonlinetool.com/fr/privacy" class="text-white/80 hover:text-white transition-colors">Privacy Policy</a></li> <li><a href="https://anyonlinetool.com/fr/terms" class="text-white/80 hover:text-white transition-colors">Terms of Service</a></li> <li><a href="/sitemap.xml" class="text-white/80 hover:text-white transition-colors">Sitemap</a></li> <li><a href="https://anyonlinetool.com/fr/contact" class="text-white/80 hover:text-white transition-colors">Contact</a></li> </ul> </div> <!-- Contact Column --> <div class="md:col-span-1 lg:col-span-4"> <h3 class="text-lg font-bold text-white mb-4">Contact</h3> <ul class="space-y-3"> <li> <a href="mailto:support@anyonlinetool.com" class="flex items-center group"> <div class="w-8 h-8 rounded-lg bg-white/20 flex items-center justify-center mr-3 group-hover:bg-white transition-colors"> <svg class="w-4 h-4 text-white group-hover:text-blue-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M18.364 5.636l-3.536 3.536m0 5.656l3.536 3.536M9.172 9.172L5.636 5.636m3.536 9.192l-3.536 3.536M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-5 0a4 4 0 11-8 0 4 4 0 018 0z" /> </svg> </div> <div> <span class="block text-sm font-medium text-white">Support</span> <span class="text-xs text-white/80 group-hover:text-white">Support@AnyOnlineTool.com</span> </div> </a> </li> <li> <a href="mailto:sales@anyonlinetool.com" class="flex items-center group"> <div class="w-8 h-8 rounded-lg bg-white/20 flex items-center justify-center mr-3 group-hover:bg-white transition-colors"> <svg class="w-4 h-4 text-white group-hover:text-blue-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M3 3h2l.4 2M7 13h10l4-8H5.4M7 13L5.4 5M7 13l-2.293 2.293c-.63.63-.184 1.707.707 1.707H17m0 0a2 2 0 100 4 2 2 0 000-4zm-8 2a2 2 0 11-4 0 2 2 0 014 0z" /> </svg> </div> <div> <span class="block text-sm font-medium text-white">Sales</span> <span class="text-xs text-white/80 group-hover:text-white">Sales@AnyOnlineTool.com</span> </div> </a> </li> <li> <a href="mailto:investors@anyonlinetool.com" class="flex items-center group"> <div class="w-8 h-8 rounded-lg bg-white/20 flex items-center justify-center mr-3 group-hover:bg-white transition-colors"> <svg class="w-4 h-4 text-white group-hover:text-blue-600" fill="none" stroke="currentColor" viewBox="0 0 24 24"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 7h8m0 0v8m0-8l-8 8-4-4-6 6" /> </svg> </div> <div> <span class="block text-sm font-medium text-white">Investors</span> <span class="text-xs text-white/80 group-hover:text-white">Investors@AnyOnlineTool.com</span> </div> </a> </li> </ul> </div> </div> <div class="flex flex-col md:flex-row items-center justify-between gap-4 text-xs text-white/60"> <div class="space-y-1"> <p><strong>Copyright:</strong> © 2026 Any Online Tool. Tous droits réservés.</p> <p><strong>Operated by:</strong> <a href="https://eternitech.com" target="_blank" class="hover:underline text-white/80">eternitech.com</a></p> <p><strong>US Address:</strong> 3899 Pembroke Rd, Hollywood, Florida 33021. <strong>Contact:</strong> <a href="mailto:support@anyonlinetool.com" class="hover:underline text-white/80">support@anyonlinetool.com</a></p> </div> <div class="flex items-center gap-2"> <svg class="w-3 h-3 text-red-500" fill="currentColor" viewBox="0 0 20 20"> <path fill-rule="evenodd" d="M3.172 5.172a4 4 0 015.656 0L10 6.343l1.172-1.171a4 4 0 115.656 5.656L10 17.657l-6.828-6.829a4 4 0 010-5.656z" clip-rule="evenodd" /> </svg> <span>Empowering you to use AI for good.</span> </div> </div> </div> </footer> <!-- Scripts --> <script src="https://anyonlinetool.com/themes/tailwind/js/app.js" defer></script> <script src="https://code.jquery.com/jquery-3.7.1.min.js" integrity="sha256-/JqT3SQfawRcv/BIHPThkBvs0OEvtFFmqPF/lYI/Cxo=" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/selectize.js/0.12.1/js/standalone/selectize.min.js"></script> <script> document.addEventListener('DOMContentLoaded', function() { const showbtn = document.querySelector('.embed-tool'); const popup = document.querySelector('.embed-popup'); const closebtn = document.querySelector('.close-popup'); // Show popup when click embed button showbtn.addEventListener('click', function(event) { event.preventDefault(); popup.classList.remove('hidden'); }); // Hide popup when click outside popup.addEventListener('click', function(event) { if (event.target.classList.contains('embed-popup')) { popup.classList.add('hidden'); } }); // Hide popup when click close button closebtn.addEventListener('click', function(event) { event.preventDefault(); popup.classList.add('hidden'); }); // Copy code to clipboard const copybtn = document.querySelector('.copy-code'); copybtn.addEventListener('click', function(event) { event.preventDefault(); const code = document.querySelector('.code'); const textarea = document.createElement('textarea'); textarea.value = code.innerText; document.body.appendChild(textarea); textarea.select(); document.execCommand('copy'); document.body.removeChild(textarea); copybtn.innerText = this.dataset.copied; setTimeout(() => { copybtn.innerText = this.dataset.copy; }, 3000); }); }); const url = document.querySelector('input[name="url"]').value; const tool = document.querySelector('input[name="tool"]').value; function generateCode(license, lang) { return `<script src="${url}/embed-bucket/aot.js" data-license-key="${license}" data-lang="${lang}" data-tool-key="zxing online generator"></script>` }; jQuery('document').ready(function($) { $('.lang-selectize').selectize({ onItemAdd: function(value) { document.querySelector('input[name="language"]').value = value; const license = document.querySelector('input[name="license"]').value; const script = generateCode(license, value); const unescapedScript = $('<textarea/>').html(script).text(); document.querySelector('.code').innerHTML = unescapedScript; } }); $('.website-selectize').selectize({ onItemAdd: function(value) { document.querySelector('input[name="license"]').value = value; const lang = document.querySelector('input[name="language"]').value; const script = generateCode(value, lang); const unescapedScript = $('<textarea/>').html(script).text(); document.querySelector('.code').innerHTML = unescapedScript; } }); }); </script> <script src="https://cdn.jsdelivr.net/npm/swiper@11/swiper-bundle.min.js"></script> <script> var swiper = new Swiper('.testimonial-swiper', { slidesPerView: 1, spaceBetween: 24, loop: true, autoplay: { delay: 4000, disableOnInteraction: false }, navigation: { nextEl: '.next-btn', prevEl: '.prev-btn' }, breakpoints: { 768: { slidesPerView: 2 }, 1024: { slidesPerView: 3 } } }); </script> <!-- Full Screen Loader --> <div id="fullscreenLoader" class="fixed inset-0 top-0 left-0 z-50 flex flex-col items-center justify-center hidden w-full h-full bg-gray-900 opacity-50"> <svg class="w-5 h-5 mr-3 -ml-1 text-white animate-spin" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"> <circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle> <path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4zm2 5.291A7.962 7.962 0 014 12H0c0 3.042 1.135 5.824 3 7.938l3-2.647z"> </path> </svg> <p id="fullscreenLoaderMessage" class="mt-4 text-sm font-medium text-white uppercase"></p> </div> <!-- End Full Loader --> <div class="fixed inset-0 z-40 flex items-end justify-center px-4 py-6 pointer-events-none sm:p-6 sm:items-start sm:justify-end"> <div id="toast" x-data x-cloak @click="$store.toast.close()" x-show="$store.toast.show" x-transition:enter="transform ease-out duration-300 transition" x-transition:enter-start="translate-y-2 opacity-0 sm:translate-y-0 sm:translate-x-2" x-transition:enter-end="translate-y-0 opacity-100 sm:translate-x-0" x-transition:leave="transform transition ease-in duration-100" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" class="w-full max-w-sm bg-white border border-gray-200 rounded-lg shadow-lg cursor-pointer pointer-events-auto hover:-translate-1"> <div class="relative overflow-hidden rounded-lg shadow-xs"> <div class="px-4 py-5"> <div class="flex items-center"> <div class="flex-shrink-0 pr-0.5"> <template x-if="$store.toast.type == 'info'"> <div class="w-10 h-10"> <svg class="w-10 h-10 text-indigo-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> </div> </template> <template x-if="$store.toast.type == 'warning'"> <div class="w-10 h-10"> <svg class="w-10 h-10 text-yellow-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-3L13.732 4c-.77-1.333-2.694-1.333-3.464 0L3.34 16c-.77 1.333.192 3 1.732 3z"></path></svg> </div> </template> <template x-if="$store.toast.type == 'success'"> <div class="w-10 h-10"> <svg class="w-10 h-10 text-green-400" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12l2 2 4-4m6 2a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> </div> </template> <template x-if="$store.toast.type == 'danger'"> <div class="w-10 h-10"> <svg class="w-10 h-10 text-red-400" fill="none" stroke="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path></svg> </div> </template> </div> <div class="flex-1 w-0 pl-3.5 ml-1 border-l border-gray-100"> <p class="text-sm font-medium leading-5 text-gray-900"> <template x-if="$store.toast.type == 'info'"><span>Notice</span></template> <template x-if="$store.toast.type == 'warning'"><span>Warning</span></template> <template x-if="$store.toast.type == 'success'"><span>Success</span></template> <template x-if="$store.toast.type == 'danger'"><span>Something went wrong</span></template> </p> <p class="text-sm leading-5 text-gray-500" x-text="$store.toast.message"></p> </div> <div class="flex self-start flex-shrink-0 ml-4"> <button @click="$store.toast.close()" class="inline-flex -mt-1 text-gray-400 transition duration-150 ease-in-out rounded-full focus:outline-none focus:text-gray-500"> <svg class="w-4 h-4" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"> <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path> </svg> </button> </div> </div> </div> <div id="toast_bar" class="absolute bottom-0 left-0 w-full h-1 transition-all ease-out" :class="{ 'bg-indigo-400' : $store.toast.type == 'info', 'bg-yellow-400' : $store.toast.type == 'warning', 'bg-green-400' : $store.toast.type == 'success', 'bg-red-400' : $store.toast.type == 'danger' }" style="transition-duration: 3950ms;"></div> </div> </div> </div> <script src="https://cdn.paddle.com/paddle/paddle.js"></script> <script> window.vendor_id = parseInt(''); if(vendor_id){ Paddle.Setup({ vendor: vendor_id }); } if("sandbox" == 'sandbox') { Paddle.Environment.set('sandbox'); } let checkoutBtns = document.getElementsByClassName("checkout"); for( var i=0; i < checkoutBtns.length; i++ ){ checkoutBtns[i].addEventListener('click', function(){ waveCheckout(this.dataset.plan) }, false); } let updateBtns = document.getElementsByClassName("checkout-update"); for( var i=0; i < updateBtns.length; i++ ){ updateBtns[i].addEventListener('click', waveUpdate, false); } let cancelBtns = document.getElementsByClassName("checkout-cancel"); for( var i=0; i < cancelBtns.length; i++ ){ cancelBtns[i].addEventListener('click', waveCancel, false); } function waveCheckout(plan_id) { if(vendor_id){ let product = parseInt(plan_id); Paddle.Checkout.open({ product: product, email: '', successCallback: "checkoutComplete", }); } else { alert('Paddle Vendor ID is not set, please see the docs and learn how to setup billing.'); } } function waveUpdate(){ Paddle.Checkout.open({ override: this.dataset.url, successCallback: "checkoutUpdate", }); } function waveCancel(){ Paddle.Checkout.open({ override: this.dataset.url, successCallback: "checkoutCancel", }); } </script> <div id="cookie-consent-banner" class="hidden fixed bottom-0 left-0 right-0 z-50 bg-white border-t-2 border-gray-200 shadow-lg"> <div class="max-w-7xl mx-auto px-4 py-4 sm:px-6 lg:px-8"> <div class="flex flex-col sm:flex-row items-start sm:items-center justify-between gap-4"> <div class="flex-1"> <h3 class="text-lg font-semibold text-gray-900 mb-2">Cookie Consent</h3> <p class="text-sm text-gray-600"> We use cookies to enhance your browsing experience, provide personalized content, and analyze our traffic. By clicking "Accept", you consent to our use of cookies. <a href="https://anyonlinetool.com/fr/privacy" class="text-blue-600 hover:underline font-medium">Learn more in our Privacy Policy</a>. </p> </div> <div class="flex gap-3 flex-shrink-0"> <button id="cookie-reject" class="px-4 py-2 text-sm font-medium text-gray-700 bg-gray-200 rounded-lg hover:bg-gray-300 transition-colors duration-200"> Reject </button> <button id="cookie-accept" class="px-4 py-2 text-sm font-medium text-white bg-accent rounded-lg hover:bg-accent/90 transition-colors duration-200"> Accept </button> </div> </div> </div> </div> <script> (function () { // Check if user has already made a choice const cookieConsent = localStorage.getItem('cookie_consent'); const banner = document.getElementById('cookie-consent-banner'); // Show banner if no consent decision has been made if (!cookieConsent) { banner.classList.remove('hidden'); } else if (cookieConsent === 'accepted') { // Load analytics if consent was given loadAnalytics(); } // Handle Accept button document.getElementById('cookie-accept').addEventListener('click', function () { localStorage.setItem('cookie_consent', 'accepted'); localStorage.setItem('cookie_consent_date', new Date().toISOString()); banner.classList.add('hidden'); loadAnalytics(); }); // Handle Reject button document.getElementById('cookie-reject').addEventListener('click', function () { localStorage.setItem('cookie_consent', 'rejected'); localStorage.setItem('cookie_consent_date', new Date().toISOString()); banner.classList.add('hidden'); // Don't load analytics }); // Function to load Google Analytics (only if accepted) function loadAnalytics() { } })(); </script> <style> #cookie-consent-banner { animation: slideUp 0.3s ease-out; } @keyframes slideUp { from { transform: translateY(100%); opacity: 0; } to { transform: translateY(0); opacity: 1; } } </style> </body> </html>