w-mousekey 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -11,13 +11,92 @@ An operator for mouse and keyboard in nodejs.
11
11
  ## Documentation
12
12
  To view documentation or get support, visit [docs](https://yuda-lyu.github.io/w-mousekey/WMousekey.html).
13
13
 
14
+ ## Core
15
+ > `w-mousekey` is basing on `OpenCV`, `@u4/opencv4nodejs` and `AutoHotkey`.
16
+
14
17
  ## Installation
15
18
  ### Using npm(ES6 module):
16
19
  ```alias
17
- npm i w-mousekey
20
+
21
+ 1.下載OpenCV,下載網址:
22
+ https://github.com/opencv/opencv/releases選opencv-4.12.0-windows.exe
23
+ windows.exe為免安裝版,下載後解壓縮至C:\tools
24
+ 注意須確保路徑有效:
25
+ C:\tools\opencv\build\include
26
+ C:\tools\opencv\build\x64\vc16\bin
27
+ C:\tools\opencv\build\x64\vc16\lib
28
+
29
+ 2.於package.json內新增opencv4nodejs所需opencv路徑
30
+ "opencv4nodejs": {
31
+ "disableAutoBuild": "1",
32
+ "opencvIncludeDir": "C:\\tools\\opencv\\build\\include",
33
+ "opencvLibDir": "C:\\tools\\opencv\\build\\x64\\vc16\\lib",
34
+ "opencvBinDir": "C:\\tools\\opencv\\build\\x64\\vc16\\bin"
35
+ }
36
+
37
+ 3.於終端機(PowerShell)視窗內輸入設定參數
38
+ $Env:OPENCV4NODEJS_DISABLE_AUTOBUILD = "1"
39
+ $Env:OPENCV_INCLUDE_DIR = "C:\tools\opencv\build\include"
40
+ $Env:OPENCV_LIB_DIR = "C:\tools\opencv\build\x64\vc16\lib"
41
+ $Env:OPENCV_BIN_DIR = "C:\tools\opencv\build\x64\vc16\bin"
42
+ $Env:Path = "$Env:OPENCV_BIN_DIR;$Env:Path"
43
+
44
+ 4.輸出變數確認
45
+ echo $Env:OPENCV_INCLUDE_DIR
46
+ echo $Env:OPENCV_LIB_DIR
47
+ echo $Env:OPENCV_BIN_DIR
48
+
49
+ 5.執行npm i @u4/opencv4nodejs,若msvs有多版本則須指定npm i @u4/opencv4nodejs --msvs_version=2022
50
+
51
+ 6.執行npm i w-mousekey
52
+
18
53
  ```
19
54
  #### Example for collection
20
55
  > **Link:** [[dev source code](https://github.com/yuda-lyu/w-mousekey/blob/master/g.mjs)]
21
56
  ```alias
57
+ import getSettings from './getSettings.mjs'
58
+ import mk from './src/mousekey.mjs'
59
+ import sc from './src/screen.mjs'
60
+ import cp from './src/compare.mjs'
61
+ import ckPic from './src/ckPic.mjs'
62
+
63
+ setTimeout(async() => {
64
+ let r
65
+
66
+ // let st = getSettings()
67
+ // console.log('st', st)
68
+
69
+ // //mouseClick
70
+ // await mk.mouseClick(215, 905)
71
+ // await mk.mouseClick(100, 100)
72
+ // await mk.mouseClick(676, 908)
73
+
74
+ // //sendString
75
+ // await mk.sendString('Hello World!')
76
+ // await mk.sendString('abc中文')
77
+
78
+ // //screenSave
79
+ // await sc.screenSave(0,0,600,1000,'./ztest.png')
80
+
81
+ // //calcSimilarity
82
+ // r = await cp.calcSimilarity('./screen/首頁.png', './zscreen.png', 1)
83
+ // console.log('calcSimilarity',r)
84
+
85
+ // //calcSimilarityAndDraw
86
+ // r = await cp.calcSimilarityAndDraw('./screen/掉落.png', './zscreen.png', 1, './ztest.png')
87
+ // console.log('calcSimilarityAndDraw', r)
88
+
89
+ r = await ckPic('view', { threshold: 0.95 })
90
+ console.log('ckPic', r)
91
+
92
+ // let loc = {
93
+ // 'x': 480,
94
+ // 'y': 0,
95
+ // 'width': 480,
96
+ // 'height': 1080,
97
+ // }
98
+ // r = await ckPic('view', { ...loc, threshold: 0.95 })
99
+ // console.log('ckPic(loc)', r)
22
100
 
101
+ }, 2000) //2s內須開啟指定畫面供偵測測試
23
102
  ```