Files
51dj_server/common/qrcode.go
T
2026-10-08 16:50:13 +08:00

31 lines
538 B
Go

package common
import (
"image"
_ "image/jpeg"
_ "image/png"
"io"
"github.com/makiuchi-d/gozxing"
"github.com/makiuchi-d/gozxing/qrcode"
)
func DecodeQRCode(file io.Reader) (content string, err error) {
img, _, err := image.Decode(file)
if err != nil {
return
}
// prepare BinaryBitmap
bmp, err := gozxing.NewBinaryBitmapFromImage(img)
if err != nil {
return
}
// decode image
qrReader := qrcode.NewQRCodeReader()
result, err := qrReader.Decode(bmp, nil)
if err != nil {
return
}
return result.String(), nil
}