mirror of
https://github.com/go-vgo/robotgo.git
synced 2025-06-01 14:43:55 +00:00
35 lines
599 B
Go
35 lines
599 B
Go
package main
|
|
|
|
import (
|
|
"bytes"
|
|
"log"
|
|
|
|
"image/jpeg"
|
|
"io/ioutil"
|
|
|
|
"github.com/go-vgo/robotgo"
|
|
"golang.org/x/image/bmp"
|
|
)
|
|
|
|
func main() {
|
|
bitMap := robotgo.CaptureScreen()
|
|
defer robotgo.FreeBitmap(bitMap)
|
|
|
|
bs := robotgo.ToBitmapBytes(bitMap)
|
|
img, err := bmp.Decode(bytes.NewReader(bs))
|
|
if err != nil {
|
|
log.Println("bmp.Decode err is: ", err)
|
|
return
|
|
}
|
|
|
|
b := new(bytes.Buffer)
|
|
err = jpeg.Encode(b, img, &jpeg.Options{Quality: 20})
|
|
if err != nil {
|
|
log.Println("jpeg.Encode err is: ", err)
|
|
return
|
|
}
|
|
|
|
log.Println("bytes: ", b.Bytes())
|
|
ioutil.WriteFile("out.jpg", b.Bytes(), 0666)
|
|
}
|