Go语言可用skip2/go-qrcode库命令行生成二维码:支持中文、纠错等级、自定义尺寸/颜色/透明背景,WriteFile保存PNG/JPEG,WriteColorFile支持前景色与透明底,适合批量生成。

用 Go 语言生成并保存二维码图片,核心是借助成熟的第三方库(如 qrcode),几行代码就能完成——无需图形界面,纯命令行即可输出 PNG 或 JPEG 文件。
安装依赖库
推荐使用轻量、稳定、支持中文的 github.com/skip2/go-qrcode:
- 运行命令安装:go get github.com/skip2/go-qrcode
- 该库基于 QR Code ISO/IEC 18004 标准,支持纠错等级(L/M/Q/H)、自定义尺寸、颜色及文件导出
基础生成与保存示例
以下代码生成内容为 "Hello, 世界" 的二维码,保存为 qrcode.png:
package main
import (
"log"
"github.com/skip2/go-qrcode"
)
func main() {
err := qrcode.WriteFile("Hello, 世界", qrcode.Medium, 256, "qrcode.png")
if err != nil {
log.Fatal(err)
}
}
-
qrcode.Medium表示纠错等级(中等,约15%容错);可选Low/High/Quartile -
256是输出图片宽高(像素),正方形尺寸,最小建议 256 起以保证清晰度 -
"qrcode.png"支持.png和.jpg后缀,自动识别格式
进阶:自定义颜色与透明背景
若需修改前景色(二维码模块)或背景色,可用 qrcode.WriteColorFile:
bee餐饮点餐外卖小程序是针对餐饮行业推出的一套完整的餐饮解决方案,实现了用户在线点餐下单、外卖、叫号排队、支付、配送等功能,完美的使餐饮行业更高效便捷!功能演示:1、桌号管理登录后台,左侧菜单 “桌号管理”,添加并管理你的桌号信息,添加以后在列表你将可以看到 ID 和 密钥,这两个数据用来生成桌子的二维码2、生成桌子二维码例如上面的ID为 308,密钥为 d3PiIY,那么现在去左侧菜单微信设置
立即学习“go语言免费学习笔记(深入)”;
import "image/color"
err := qrcode.WriteColorFile(
"https://golang.org",
qrcode.Medium,
300,
&color.RGBA{0, 128, 255, 255}, // 前景色:蓝色
&color.RGBA{255, 255, 255, 0}, // 背景色:完全透明(alpha=0)
"custom_qr.png",
)
- 第5个参数为背景色,设为
&color.RGBA{255,255,255,0}可得透明底 PNG(注意仅 PNG 支持透明) - 确保目标路径有写入权限,否则
WriteFile会返回permission denied
批量生成与文件名控制
实际应用中常需按内容生成多个二维码,例如从 CSV 或命令行参数读取:









