|  | @ -2,8 +2,13 @@ package common | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					|  |  | import ( |  |  | import ( | 
			
		
	
		
		
			
				
					|  |  | 	"bytes" |  |  | 	"bytes" | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 	"fmt" | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 	"github.com/makiuchi-d/gozxing" | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 	"github.com/makiuchi-d/gozxing/qrcode" | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 	goQrcode "github.com/skip2/go-qrcode" | 
			
		
	
		
		
			
				
					|  |  | 	"golang.org/x/text/encoding/simplifiedchinese" |  |  | 	"golang.org/x/text/encoding/simplifiedchinese" | 
			
		
	
		
		
			
				
					|  |  | 	"golang.org/x/text/transform" |  |  | 	"golang.org/x/text/transform" | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 	"image" | 
			
		
	
		
		
			
				
					|  |  | 	"io/ioutil" |  |  | 	"io/ioutil" | 
			
		
	
		
		
			
				
					|  |  | 	"math/rand" |  |  | 	"math/rand" | 
			
		
	
		
		
			
				
					|  |  | 	"os" |  |  | 	"os" | 
			
		
	
	
		
		
			
				
					|  | @ -95,17 +100,22 @@ func Exists(path string) bool { | 
			
		
	
		
		
			
				
					|  |  | 	return true |  |  | 	return true | 
			
		
	
		
		
			
				
					|  |  | } |  |  | } | 
			
		
	
		
		
			
				
					|  |  | 
 |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  | func OpenImage(file string) { |  |  | func OpenImage(qrPath string) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 	if runtime.GOOS == "windows" { |  |  | 	if runtime.GOOS == "windows" {//windows
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 		cmd := exec.Command("cmd", "/k", "start", file) |  |  | 		cmd := exec.Command("cmd", "/k", "start", qrPath) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					|  |  | 		_ = cmd.Start() |  |  | 		_ = cmd.Start() | 
			
		
	
		
		
			
				
					
					|  |  | 	} else { |  |  | 	}else if runtime.GOOS == "darwin" {//Macos
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 		if runtime.GOOS == "linux" { |  |  | 		cmd := exec.Command("open", qrPath) | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 			cmd := exec.Command("eog", file) |  |  | 		_ = cmd.Start() | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 			_ = cmd.Start() |  |  | 	}else{ | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 		} else { |  |  | 		//linux或者其他系统
 | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 			cmd := exec.Command("open", file) |  |  | 		file, _ := os.Open(qrPath) | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 			_ = cmd.Start() |  |  | 		img, _, _ := image.Decode(file) | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  | 		} |  |  | 		bmp, _ := gozxing.NewBinaryBitmapFromImage(img) | 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					|  |  |  |  |  | 		qrReader := qrcode.NewQRCodeReader() | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 		res, _ := qrReader.Decode(bmp, nil) | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 		//输出控制台
 | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 		qr, _ := goQrcode.New(res.String(), goQrcode.High) | 
			
		
	
		
		
			
				
					|  |  |  |  |  | 		fmt.Println(qr.ToSmallString(false)) | 
			
		
	
		
		
			
				
					|  |  | 	} |  |  | 	} | 
			
		
	
		
		
			
				
					|  |  | } |  |  | } | 
			
		
	
	
		
		
			
				
					|  | 
 |