From 62b865dbef744887ca282949b85aedbd7b4749ed Mon Sep 17 00:00:00 2001 From: vcaesar Date: Mon, 9 Jul 2018 23:29:27 +0800 Subject: [PATCH 1/2] add get Scale and GetScaleSize func --- robotgo.go | 42 +++++++++++++++++++++++++++++++----------- 1 file changed, 31 insertions(+), 11 deletions(-) diff --git a/robotgo.go b/robotgo.go index 0d0f699..d8edad2 100644 --- a/robotgo.go +++ b/robotgo.go @@ -188,13 +188,43 @@ func GetPixelColor(x, y int) string { return gcolor } -// GetScreenSize get screen size +// ScaleX get primary display horizontal DPI scale factor +func ScaleX() int { + return int(C.scalex()) +} + +// ScaleY get primary display vertical DPI scale factor +func ScaleY() int { + return int(C.scaley()) +} + +// GetScreenSize get the screen size func GetScreenSize() (int, int) { size := C.get_screen_size() // fmt.Println("...", size, size.width) return int(size.width), int(size.height) } +// Scale get the screen scale +func Scale() int { + dip := map[int]int{ + 96: 100, + 120: 125, + 144: 150, + 192: 200, + } + + x := ScaleX() + return dip[x] +} + +// GetScaleSize get the screen scale size +func GetScaleSize() (int, int) { + x, y := GetScreenSize() + s := Scale() + return x * s / 100, y * s / 100 +} + // SetXDisplayName set XDisplay name func SetXDisplayName(name string) string { cname := C.CString(name) @@ -1293,16 +1323,6 @@ ____ __ ____ __ .__ __. _______ ______ ____ __ ____ */ -// ScaleX get primary display horizontal DPI scale factor -func ScaleX() int { - return int(C.scalex()) -} - -// ScaleY get primary display vertical DPI scale factor -func ScaleY() int { - return int(C.scaley()) -} - // ShowAlert show a alert window func ShowAlert(title, msg string, args ...string) int { var ( From 9c2797ade0bb26d0549d46b3341b3e4846f3f5c9 Mon Sep 17 00:00:00 2001 From: vcaesar Date: Mon, 9 Jul 2018 23:33:59 +0800 Subject: [PATCH 2/2] fix dpi spell --- robotgo.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/robotgo.go b/robotgo.go index d8edad2..48c61e5 100644 --- a/robotgo.go +++ b/robotgo.go @@ -207,7 +207,7 @@ func GetScreenSize() (int, int) { // Scale get the screen scale func Scale() int { - dip := map[int]int{ + dpi := map[int]int{ 96: 100, 120: 125, 144: 150, @@ -215,7 +215,7 @@ func Scale() int { } x := ScaleX() - return dip[x] + return dpi[x] } // GetScaleSize get the screen scale size