本帖最後由 C_Law 於 2018-3-4 22:45 編輯
詳細小小講下設定檔的格式,以下是一個最基本的設定檔:- <irplus>
- <device manufacturer="A" model="B" columns="C" format="D">
- <button label="E" alt="F" labelSize="G" span="H" labelColor="I" backgroundColor="J">K</button>
- <space multiple="L" />
- <button label="E" alt="F" labelSize="G" span="H" fillColor="M">K</button>
- </device>
- </irplus>
複製代碼 <device> 內有幾個必需的參數:
A:文字,遙控器牌子名,其實可以任意文字
B:文字,遙控器型號,同樣可以係任意文字
C:十進制數字,介面無一個橫行分割的份數(詳情請睇 H)
D:文字,遙控訊號 Protocol 名,例如 NEC 是 WINLIRC_NEC1(有時間會再講),其它 Protocol 可能再需要在這裡加入更多參數(有時間會再講)
<device> 與 </device> 之內是每個遙控制的設定,每個掣的代碼用<button> 與 </button> 包圍:
E:文字,一個掣上面顯示的文字;也可以係 Icon 的代碼"&#xxxxxx" 格式)
F:文字,非必要,如果 Label(E) 是文字,這裡可加入文字說明,但 Import 後會被刪除
G:十進制數字,這個制的字體大小,我發現,在同一數值下,文字會比 Icon 大,如果想做到一致的大小,Icon 的 Labelsize 應該用較大數值
H:十進制數字,一個制的橫向大細,columns(C) 和 span(H) 是有關連,C 設定每一橫行分開多小格,而 H 就是一個掣的格數,例如 C=12,H=4,這個掣的闊度就是全行的 4/12 =1/3。
I:16進制數字,掣面上文字/Icon 的顏色,格式是 AARRGGBB,AA=Alpha值,一般是 FF,R/G/B 係紅綠黃的雙位數值,例如純藍色是:FF0000FF
J:16進制數字,掣面的底色,格式同上
K:16進制數字,格式是 0xHHHHHHHH,至於有幾多個位就視乎發射訊號的種類,例如 NEC protocol 係 32 bits,一個 HEX 數值有 4 bits,即係需要 8 位 16 進制數值,例如有線個 Power 掣,數值是 0x80BFAA55,要將這 8 位分成 2 組 4 位的寫成 0x80BF 0xAA55。如果 format(D) 是(WINLIRC_RAW) 就是十進制的時脈長度(單位是μs)(有時間會再講)。也可以是 macro 的按掣。
L:十進制數字,空格的闊度。一個掣同一個掣之間放入空格。例如 1# 代碼的紅/綠/黃/藍四色掣,如果將綠色掣的一行(由 <button....> 至 </button>) 改為 <space multiple="3" />,就會變成:紅/空格/黃/藍。
M:十六進制數字,填滿顏色,格式同 I、J。如果文字顏色和底色相同,可以用 fillColor 代替 labelColor 和 backgroundColor,例如 1# 代碼的紅色掣,可以將原本的 backgroundColor="FFFF4242" labelColor="FFFF4242" 改寫為 fillColor="FFFF4242"。
一個掣的代碼內,可使用 Macro,用一個掣依次序發射多個訊號,例如 1# 幅相左上的 News、AXN、NGC、DisCh,以 DisCh 來講,高清 Discovery Channel 的台號是 253,可用以下代碼:- <button label="DisCh" labelSize="12.0" span="3" macro="true">2;5;3</button>
複製代碼 在 <button....>之內加入 macro="true",然後將要按的掣的 label(E) 用分號 ; 分隔寫入 K,例如 2;5;3 就是先發射 2、再發射 5、最後發射 3。
如果 irplus 已載入多個遙控器設定檔,更可以用 macro 加入其它設定檔的掣,例如在有線的設定檔加入電視機的 Power/Vol+/Vol-/Input……等等,就可以用有線的遙控版面內直接控制電視機,無需要先將 irplus 轉去電視機的版面。格式是:
[A - B];E
例如我部電視機是:<device manufacturer="SHARP" model="GA538WJSA" ......以下省略>
而電視機轉 Input 個掣是:<button label="Inputs" ……以下省略>
在有線電視個設定檔可加入:- <button label="TV-Inputs" labelSize="12.0" span="3" macro="true">[SHARP - GA538WJSA];Inputs</button
複製代碼 注意,macro 的 manufacturer(A) 尾和 model(B) 頭各有一個空格,即是 A空格-空格B。
不過,如果button label 是個 Icon,代碼不能照抄,例如 Power 掣 Icon 的代碼本應是 󿐥,但如果將 macro 寫成 [SHARP - GA538WJSA];󿐥卻又無法正常控制到電視機,要將後面 1045541 改為 61457才能正常用得到。我暫時還未搞清楚為何要轉數值,也不清楚要跟據什麼準則去轉。 |