NVDA 無障礙數學報讀
編輯歷史
| 時間 | 作者 | 版本 |
|---|---|---|
| 2017-07-03 08:38 | r2 | |
顯示 diff- NVDA 無障礙數學報讀
+ NVDA 無障礙數學報讀
坑主:曾奕勳(雲端千眼平台 開發者,本身為視障朋友)
(71 行未修改)
|
||
| 2017-07-01 14:31 – 14:31 | r0 – r1 | |
顯示 diff+ NVDA 無障礙數學報讀
+
+ 坑主:曾奕勳(雲端千眼平台 開發者,本身為視障朋友)
+ 協力:au
+
+ NVDA(NonVisual Desktop Access)是一套開源的螢幕閱讀器。目前中文數學網頁報讀,是採取非開源的 MathPlayer 軟體,但它有不少問題,例如:
+
+ *
+
+ 會報讀成:
+ *「x 等於 分數 2 a 分子 減 b 加減 的平方根 b 平方 減 4 a c 結束根號 結束分數 」
+
+ 其中「的平方根」的讀法難以理解,甚至有些符號(微分、積分)沒中文直接會唸英文。
+
+ 理想狀況下,應報讀成:
+ 「x 等號 開始分數
+ 2 a
+ 分之
+ 負數 b 加減號 開始平方根
+ b 的平方 減號 4 a c
+ 結束平方根
+ 結束分數」
+
+ 但目前沒有開源的 MathML 轉中文引擎,僅英文有 ChromeVox 。
+
+ 徵求跳坑(意者請連絡坑主):
+ *將 ChromeVox 規則(JavaScript)中文化,或
+ *寫一套 MathML 轉 NVDA speech command 的 plugin(Python)
+
+ 補充說明:
+ *NVDA有定義MathML處理的物件介面規格,可自行寫轉換程式進行處理,且NVDA有附加元件擴充供能,即使PR官方無納入,也可透過附加元件發佈。
+ *坑主之前幫wiris翻譯時看到不錯的做法概念,讓順序也可以自訂。主要做法是去研究MathML的規範並整理成一條一條的rule與文字化內容,當看到式子內有對應的rule就找對應的文字化內容。
+ *像分數的例子中,就會類似「開始分數->(分母)->分之->(分子)->結束分數」除了括號內的部份是用遞迴往下一層外,其他三項是可自訂的且五項的順序也可調整,會較有彈性。
+
+ 參考文件:
+ *https://www.nvaccess.org/files/nvda/documentation/developerGuide.html
+ *https://addons.nvda-project.org/devDocs/devDocs.en.html
+
+ 範列 MathML 源碼:
+
+ *
+
+ *<math>
+ * <mrow>
+ * <mi>x</mi>
+ * <mo>=</mo>
+ * <mfrac>
+ * <mrow>
+ * <mo form="prefix">−</mo>
+ * <mi>b</mi>
+ * <mo>±</mo>
+ * <msqrt>
+ * <msup>
+ * <mi>b</mi>
+ * <mn>2</mn>
+ * </msup>
+ * <mo>−</mo>
+ * <mn>4</mn>
+ * <mo>⁢</mo>
+ * <mi>a</mi>
+ * <mo>⁢</mo>
+ * <mi>c</mi>
+ * </msqrt>
+ * </mrow>
+ * <mrow>
+ * <mn>2</mn>
+ * <mo>⁢</mo>
+ * <mi>a</mi>
+ * </mrow>
+ * </mfrac>
+ * </mrow>
+ *</math>
+ *
|
||