package qr import ( "fmt" "image" "log" "os" "path/filepath" "github.com/skip2/go-qrcode" ) // RenderString as a QR code func RenderString(s string) { q, err := qrcode.New(s, qrcode.Medium) if err != nil { log.Fatal(err) } fmt.Println(q.ToSmallString(false)) dir, err1 := filepath.Abs(filepath.Dir(os.Args[0])) if err1 != nil { log.Fatal(err1) } err2 := qrcode.WriteFile(s, qrcode.Medium, 200, dir + "/tmp.png") if err2 != nil { panic(err2) } } // RenderImage returns a QR code as an image.Image func RenderImage(s string) image.Image { q, err := qrcode.New(s, qrcode.Medium) if err != nil { log.Fatal(err) } return q.Image(256) }