[{"data":1,"prerenderedAt":402},["ShallowReactive",2],{"tool-content:qr-code":3,"published-tool-content":186},{"id":4,"title":5,"body":6,"category":160,"dataVersion":161,"description":162,"extension":163,"featured":164,"icon":165,"keywords":166,"meta":173,"navigation":164,"path":174,"seo":175,"seoTitle":176,"slug":177,"status":178,"stem":179,"updatedAt":180,"usageTips":181,"__hash__":185},"tools\u002Ftools\u002Fqr-code.md","二维码生成与识别工具",{"type":7,"value":8,"toc":144},"minimark",[9,13,17,20,23,26,29,32,42,45,48,51,63,66,80,83,86,100,103,106,109,112,115,120,123,127,130,134,137,141],[10,11,12],"h2",{"id":12},"工具说明",[14,15,16],"p",{},"输入文本、网址或其他内容，可以生成对应的二维码，并下载为 PNG 或 SVG 图片。生成时可以调整纠错级别、留白边距、前景色、背景色和下载尺寸。",[14,18,19],{},"也可以上传已有的二维码图片，读取其中的文本或网址。识别结果可以直接复制，或者回填到生成区重新制作二维码。",[14,21,22],{},"所有生成和识别过程都在当前浏览器中完成，输入内容、上传图片和识别结果不会上传或保存。",[10,24,25],{"id":25},"如何生成二维码",[14,27,28],{},"在“二维码内容”中输入文本或网址，选择纠错级别、尺寸、边距和颜色，然后点击“生成二维码”。",[14,30,31],{},"生成完成后，可以下载 PNG 或 SVG：",[33,34,35,39],"ul",{},[36,37,38],"li",{},"PNG 适合直接发送、插入文档或发布到普通图片平台。",[36,40,41],{},"SVG 是矢量格式，放大后边缘仍然清晰，适合排版和印刷。",[14,43,44],{},"如果内容超出二维码容量，页面会提示缩短内容或降低纠错级别。二维码适合保存短文本、网址和简短配置，不适合代替普通文件存储。",[10,46,47],{"id":47},"如何识别二维码图片",[14,49,50],{},"点击“选择二维码图片”，上传 PNG、JPEG、WebP 或 GIF 文件。单张图片不能超过 10 MiB。",[14,52,53,54,58,59,62],{},"页面会读取图片像素并尝试识别其中的一个二维码。识别成功后，可以复制原始内容；如果结果是 ",[55,56,57],"code",{},"http"," 或 ",[55,60,61],{},"https"," 网址，也可以直接打开。",[14,64,65],{},"识别失败时，可以尝试：",[33,67,68,71,74,77],{},[36,69,70],{},"使用更清晰、分辨率更高的原图。",[36,72,73],{},"保留二维码四周完整的空白区域。",[36,75,76],{},"避免严重倾斜、反光、模糊或遮挡。",[36,78,79],{},"提高二维码和背景之间的颜色对比度。",[10,81,82],{"id":82},"纠错级别",[14,84,85],{},"纠错级别越高，二维码在少量污损或遮挡时越容易恢复，但同样内容通常需要更多模块：",[33,87,88,91,94,97],{},[36,89,90],{},"L：约可恢复 7% 的数据损失。",[36,92,93],{},"M：约可恢复 15% 的数据损失，默认使用此级别。",[36,95,96],{},"Q：约可恢复 25% 的数据损失。",[36,98,99],{},"H：约可恢复 30% 的数据损失。",[14,101,102],{},"纠错能力不代表二维码可以被任意裁剪或覆盖。重要场景仍应保留完整边缘，并在实际尺寸和使用环境中试扫。",[10,104,105],{"id":105},"颜色和留白",[14,107,108],{},"常见扫描设备通常更容易识别深色前景和浅色背景。自定义颜色时，应避免前景色与背景色过于接近，也不要去掉二维码四周的留白。",[14,110,111],{},"页面默认保留 4 个模块的边距。下载后如果再次裁剪图片，应把这部分留白一起保留。",[10,113,114],{"id":114},"常见问题",[116,117,119],"h3",{"id":118},"可以扫描摄像头画面吗","可以扫描摄像头画面吗？",[14,121,122],{},"当前版本不支持摄像头扫描，只支持上传本地图片识别。",[116,124,126],{"id":125},"一张图片里有多个二维码时会怎样","一张图片里有多个二维码时会怎样？",[14,128,129],{},"当前只返回识别到的一个二维码。如果需要识别特定二维码，建议先裁剪图片，只保留目标区域和完整留白。",[116,131,133],{"id":132},"上传的图片会发送到服务器吗","上传的图片会发送到服务器吗？",[14,135,136],{},"不会。图片通过浏览器文件接口读取，并在临时 Canvas 中转换为像素供识别使用，不会上传到服务器。",[116,138,140],{"id":139},"生成的网址二维码安全吗","生成的网址二维码安全吗？",[14,142,143],{},"二维码只负责保存原始文本，不会判断网址是否可信。打开识别到的网址前，仍应确认域名和内容来源。",{"title":145,"searchDepth":146,"depth":146,"links":147},"",2,[148,149,150,151,152,153],{"id":12,"depth":146,"text":12},{"id":25,"depth":146,"text":25},{"id":47,"depth":146,"text":47},{"id":82,"depth":146,"text":82},{"id":105,"depth":146,"text":105},{"id":114,"depth":146,"text":114,"children":154},[155,157,158,159],{"id":118,"depth":156,"text":119},3,{"id":125,"depth":156,"text":126},{"id":132,"depth":156,"text":133},{"id":139,"depth":156,"text":140},"developer","uqr-0.1.3+jsqr-1.4.0","在线生成二维码并下载 PNG 或 SVG，也可上传图片识别二维码内容；文本和图片只在浏览器本地处理。","md",true,"i-lucide-qr-code",[167,168,169,170,171,172],"二维码生成","二维码识别","二维码解析","QR Code","在线二维码工具","二维码图片",{},"\u002Ftools\u002Fqr-code",{"title":5,"description":162},"二维码生成与识别工具 - 在线制作和解析 QR Code","qr-code","published","tools\u002Fqr-code","2026-07-23",[182,183,184],"文本和图片只在当前浏览器中处理","深色前景、浅色背景和完整留白更容易识别","上传图片支持 PNG、JPEG、WebP 和 GIF","cXzzXBvU8c0xKpVURgDFghTfusEKXIwl3mF7sK3oBqs",[187,203,215,227,241,253,265,277,289,291,304,315,328,341,353,367,379,390],{"slug":188,"title":189,"description":190,"status":178,"icon":191,"keywords":192,"featured":164},"asymmetric-encryption","RSA 非对称加解密工具","使用 RSA 公钥加密、私钥解密短文本；支持常见 PEM、JWK、X.509 公钥和旧系统兼容参数。","i-lucide-key-round",[193,194,195,196,197,198,199,200,201,202],"RSA 加密","RSA 解密","RSA-OAEP","PKCS1Padding","OAEPWithSHA-256AndMGF1Padding","RSA 密钥生成","PEM 密钥","RSA JWK","PKCS#1 密钥","X.509 证书",{"slug":204,"title":205,"description":206,"status":178,"icon":207,"keywords":208,"featured":164},"base58-converter","Base58 编解码工具","在线使用 Bitcoin Base58 编解码 UTF-8 文本或 Hex 字节，并以文本、Hex 或二进制文件查看解码结果。","i-lucide-binary",[209,210,211,212,213,214],"Base58 编解码","Base58 编码","Base58 解码","Bitcoin Base58","Hex 转 Base58","Base58 在线工具",{"slug":216,"title":217,"description":218,"status":178,"icon":219,"keywords":220,"featured":164},"base64-converter","Base64 编解码工具","在线转换标准 Base64 与 Base64URL，支持 UTF-8 文本、Hex 字节、文件编码及二进制解码下载。","i-lucide-file-key-2",[221,222,223,224,225,226],"Base64 编解码","Base64URL","文件转 Base64","Hex 转 Base64","Base64 解码","Base64 在线工具",{"slug":228,"title":229,"description":230,"status":178,"icon":231,"keywords":232,"featured":164},"chacha20-poly1305","ChaCha20-Poly1305 加解密工具","使用 ChaCha20 或 XChaCha20-Poly1305 安全加解密文本，适合现代 AEAD 或对接 RFC 8439 的场景。","i-lucide-shield-check",[233,234,235,236,237,238,239,240],"ChaCha20-Poly1305","XChaCha20-Poly1305","ChaCha20 加密","Poly1305","RFC 8439","AEAD","AAD","PBKDF2",{"slug":242,"title":243,"description":244,"status":178,"icon":245,"keywords":246,"featured":164},"hex-converter","Hex 编解码工具","在线转换 UTF-8 文本与十六进制字节，支持大小写、0x 前缀以及空格或冒号分隔格式。","i-lucide-hash",[247,248,249,250,251,252],"Hex 编解码","十六进制编码","十六进制解码","文本转 Hex","0x Hex","Hex 在线工具",{"slug":254,"title":255,"description":256,"status":178,"icon":257,"keywords":258,"featured":164},"hybrid-encryption","RSA + AES 混合加解密工具","使用接收方 RSA 公钥加密较长文本：RSA 包装随机 AES-256 密钥，正文由 AES-GCM 保护。","i-lucide-package-check",[259,260,195,261,262,263,264],"混合加密","RSA AES","AES-256-GCM","数字信封","会话密钥","Hybrid Encryption",{"slug":266,"title":267,"description":268,"status":178,"icon":269,"keywords":270,"featured":164},"json-formatter","JSON 格式化与校验工具","在线校验、格式化和压缩 JSON 数据，支持 JSONC 单行与块注释，可准确定位格式错误，内容仅在浏览器本地处理。","i-lucide-braces",[271,272,273,274,275,276],"JSON 格式化","JSON 校验","JSON 压缩","JSONC","JSON 在线工具","JSON 注释",{"slug":278,"title":279,"description":280,"status":178,"icon":281,"keywords":282,"featured":164},"md5-generator","MD5 哈希工具","在线计算文本或文件的 MD5 摘要，支持十六进制大小写和 Base64 输出，内容仅在浏览器本地处理。","i-lucide-fingerprint",[283,284,285,286,287,288],"MD5 工具","MD5 哈希","文件 MD5","MD5 Base64","文本 MD5","MD5 摘要",{"slug":177,"title":5,"description":162,"status":178,"icon":165,"keywords":290,"featured":164},[167,168,169,170,171,172],{"slug":292,"title":293,"description":294,"status":178,"icon":219,"keywords":295,"featured":164},"rsa-key-converter","RSA 密钥格式转换与解析工具","识别 RSA 密钥或证书的实际格式，在 PEM、DER、JWK 之间转换，并用指纹核对是否为同一公钥。",[296,297,298,299,300,301,302,303],"RSA 密钥转换","PEM 转 JWK","JWK 转 PEM","PKCS#1 转 PKCS#8","SPKI 公钥","DER 解析","X.509 证书解析","RSA 指纹",{"slug":305,"title":306,"description":307,"status":178,"icon":231,"keywords":308,"featured":164},"sha256-generator","SHA-256 哈希工具","在线计算文本或文件的 SHA-256 摘要，支持十六进制大小写和 Base64 输出，内容仅在浏览器本地处理。",[309,310,311,312,313,314],"SHA-256 工具","SHA256 哈希","文件 SHA256","SHA256 Base64","文本 SHA256","SHA-256 摘要",{"slug":316,"title":317,"description":318,"status":178,"icon":191,"keywords":319,"featured":164},"sm2-encryption","SM2 公钥加解密工具","面向国密公钥加密生成 SM2 密钥对并处理文本，支持常见 C1C3C2 与旧式 C1C2C3 排列。",[320,321,322,323,324,325,326,327],"SM2 加密","SM2 解密","C1C3C2","C1C2C3","国密算法","SM2 密钥生成","压缩公钥","Hex 密文",{"slug":329,"title":330,"description":331,"status":178,"icon":332,"keywords":333,"featured":164},"sm4-encryption","SM4 对称加解密工具","面向国密系统使用 SM4-CBC 或 SM4-ECB 加解密文本，并与 Hex、Base64 密文接口联调。","i-lucide-lock-keyhole",[334,335,336,337,338,339,324,327,340],"SM4 加密","SM4 解密","SM4-CBC","SM4-ECB","PKCS7","NoPadding","Base64 密文",{"slug":342,"title":343,"description":344,"status":178,"icon":345,"keywords":346,"featured":164},"social-insurance","五险一金计算器","按城市、逐月工资、个人缴费基数和专项附加扣除，估算个人五险一金、累计预扣个税与税后收入。","i-lucide-calculator",[347,348,349,350,351,352],"五险一金","社保计算","公积金计算","缴费基数","税后工资","个税计算",{"slug":354,"title":355,"description":356,"status":178,"icon":332,"keywords":357,"featured":164},"symmetric-encryption","AES 对称加解密工具","使用共享密钥或口令加解密文本；默认采用 AES-256-GCM，并保留 CBC、CTR、CFB、ECB 等兼容模式。",[358,359,360,361,362,363,364,240,365,366],"AES 加密","AES 解密","AES-GCM","AES-CBC","AES-ECB","PKCS7Padding","ZeroPadding","AES AAD","AES 原始参数",{"slug":368,"title":369,"description":370,"status":178,"icon":371,"keywords":372,"featured":164},"timestamp-converter","时间戳转换工具","在线完成 Unix 时间戳与日期时间互转，自动识别秒或毫秒，支持 IANA 时区和多行批量转换。","i-lucide-clock-3",[373,374,375,376,377,378],"时间戳转换","Unix 时间戳","timestamp","日期转时间戳","时间戳转日期","毫秒时间戳",{"slug":380,"title":381,"description":382,"status":178,"icon":207,"keywords":383,"featured":164},"unicode-converter","Unicode 转换工具","在线将中文、Emoji 等普通文本转换为 \\uXXXX Unicode 转义，或把 Unicode 转义还原为可读文本，内容仅在浏览器本地处理。",[384,385,386,387,388,389],"Unicode 转换","Unicode 转中文","中文转 Unicode","Unicode 编码","Unicode 解码","Unicode 在线工具",{"slug":391,"title":392,"description":393,"status":178,"icon":394,"keywords":395,"featured":164},"yaml-json-converter","YAML 校验与 JSON 互转工具","在线校验 YAML 或 JSON 格式，并在 YAML 与标准 JSON 之间双向转换，可定位常见语法错误，内容仅在浏览器本地处理。","i-lucide-file-json-2",[396,397,398,399,400,401],"YAML 校验","YAML 转 JSON","JSON 转 YAML","YAML JSON 互转","YAML 在线工具","YAML 格式检查",1784957143881]