帳號:guest(18.191.154.167)          離開系統
字體大小: 字級放大   字級縮小   預設字形  

詳目顯示

以作者查詢圖書館館藏以作者查詢臺灣博碩士論文系統以作者查詢全國書目
作者(中文):曾奕勳
作者(外文):Tseng, Yi-Hsung
論文名稱(中文):基於螢幕閱讀程式NVDA之附加元件開發
論文名稱(外文):Development of addons based on the screen reader NVDA
指導教授(中文):孫宏民
指導教授(外文):Sun, Hung-Min
口試委員(中文):邱惠玉
張千惠
口試委員(外文):Chiu, Huei-Yu
Chang, Chien-Hui
學位類別:碩士
校院名稱:國立清華大學
系所名稱:資訊工程學系所
學號:101062567
出版年(民國):106
畢業學年度:105
語文別:中文
論文頁數:39
中文關鍵詞:螢幕閱讀程式附加元件
外文關鍵詞:NVDAscreen reader
相關次數:
  • 推薦推薦:0
  • 點閱點閱:372
  • 評分評分:*****
  • 下載下載:18
  • 收藏收藏:0
螢幕閱讀程式是一種能將電腦系統上之數位內容以語音、點字的方式提供給使用者。隨著軟體技術的快速發展更迭,新型態的使用者操作介面與互動方式不斷推陳出新,螢幕閱讀程式也必需不斷推出更新以>因應這些新型態的變化。如何提供足夠且易於理解的瀏覽與操作是螢幕閱讀程式研發的核心目標。

本研究首先介紹了知名開放源始碼的螢幕報讀程式NVDA的整體程式架構與各項模組的功能。接著介紹可協助偵測、除錯、分析程式的NVDA輔助開發工具。而後解析實作上所需用到的相關功能的NVDA原始碼。

在了解了相關功能的源始碼後,透過NVDA系統所提供之附加元件介面並參考NVDA瀏覽游標移動功能、語音輸出功能等相關源始碼,實作了一套NVDA直向瀏覽附加元件,提供使用者直向移動瀏覽游標的功能,>可快速略過不需要之文字資訊,提升瀏覽資訊效率。並以linux上經常使用空格排版的內容利用實作的直向瀏覽附加元件功能與原始NVDA游標瀏覽功能進行實驗。比較計算兩者在瀏覽文字上的瀏覽速度差異,分析直向瀏覽的效益。

最後一章結論與未來發展中揭示了更多的瀏覽與操作的項目。不僅僅針對簡單文字進行處理,更針對像html、MathMl這類復雜的文件進行處理優化,讓瀏覽與操作更多樣且有效率,也是未來發展的重要項目>。

盼透過本研究從NVDA整體架構、輔助開發工具、附加元件的基本架構、實作附加元件、進階設計一系列完整的內容,帶給開發者整體的入門開發知識,能順利進入NVDA的開發世界。
A screen reader is a way to provide the user with a digital content on the operating system in a voice or braille. With the rapid developing software technology, the new user interfaces and interactions keep innovating. Therefore, screen reader also needs to keep upgrading to adapt these new types of changes.

How to provide the browsing and operation which are sufficient and easy to understand is the core goal of developing screen reader.

The Chapter 1 is introduction of the integrality of screen reader and NVDA.

In Chapter 2, the well-known open source screen reader, NVDA is introduced for its entire program structure and features for each module.

The third chapter is NVDA auxiliary development tool which can help detect, debug and analyze the program. Later, We analyzes the source code of relevant module required.

In the Chapter 4, VerticalReview addon was implemented through referring to relevant modules such as features of cursor movement and voice output from NVDA and considering the addon interface from NVDA. It provides the feature of vertical cursor movement, which can quickly skip of unwanted texts to further improve the efficiency of browsing. The common set of blank column often used in Linux uses VerticalReview and original Review from NVDA to compare the efficiency by actual testing.

In Chapter 5, more browsing and operation are revealed.They did not only process the simple texts, but also optimize the complex files such as html and MathMl. It makes browsing and operation more diverse and efficient, as important project can be developed in the future.

We look forward to further design a series of complete content from the complete structure of NVDA, assistance development tool, basic structure of addon and implemente addon. It brings the entry-level knowledge of development for the developer and guides them to enter the world of NVDA with less concern.
致謝 ----------------------------------------v
摘要 ----------------------------------------vii
Abstract ------------------------------------ix
第1章:緒論 ---------------------------------1
1.1 前言 -------------------------------------1
1.2 研究動機與目地 -------------------------3
第2章:背景---------------------------------5
2.1 特殊元件access API---------------------5
2.2 NVDA架構------------------------------6
2.3 NVDA可及性(accessibility)階層架構 -----8
第3章:研究NVDA開發工具與源始碼解析------11
3.1 NVDA事件記錄檢視器--------------------11
3.2 Python 主控台--------------------------12
3.3 NVDA附加元件--------------------------13
3.3.1 App Modules ------------------------14
3.3.2 Global Plugins-----------------------15
3.4 NVDA瀏覽文字(ReviewingText)解析------16
第4章、研究實作-----------------------------27
4.1 問題描述--------------------------------27
4.2 附加元件實作 ---------------------------28
4.3 效益------------------------------------31
第5章:結論與未來發展-----------------------37
References----------------------------------39
[1] “Nv access.” https://www.nvaccess.org/.
[2] “Github-nvaccess/nvda:Nvda,thefreeandopensourcescreenreaderformicrosoft
windows.” https://github.com/nvaccess/nvda.
[3] “Nvdafeatureinternals.”https://github.com/nvaccess/nvda-community/wiki/
internals.
[4] “Nvda user guide.” https://www.nvaccess.org/files/nvda/documentation/
userGuide.html.
[5] “Nvda developer guide.” https://www.nvaccess.org/files/nvda/
documentation/developerGuide.html.
[6] “Nvda add-on development guide.” https://addons.nvda-project.org/devDocs/ devDocs.en.html.
 
 
 
 
第一頁 上一頁 下一頁 最後一頁 top
* *