我們都知道 Apple 為其設(shè)備提供了良好的無(wú)障礙支持和工具,視障者可以使用 VoiceOver(旁白)流暢的操作電腦,甚至可以寫(xiě)代碼做 App。但這些工具能否發(fā)揮效果很大程度上取決于開(kāi)發(fā)者是否針對(duì)無(wú)障礙進(jìn)行了適配。由于大眾對(duì)無(wú)障礙的認(rèn)知還比較欠缺,很多軟件其實(shí)并沒(méi)有為盲人優(yōu)化使用體驗(yàn),尤其在那些熱衷于自己造輪子的軟件中,無(wú)障礙很容易成為一個(gè)問(wèn)題。
iOS 14 為視障者提供了有限的 OCR 識(shí)別功能,但在 macOS 上這還是一個(gè)空白。尤其是一些 macOS 軟件由于構(gòu)建方式不同,完全沒(méi)有使用系統(tǒng)提供的 UI 元素,這使得他們無(wú)法被 VoiceOver 識(shí)別,常見(jiàn)的比如游戲中那些使用圖片作為按鈕的區(qū)域等。尤其對(duì)于有音樂(lè)影視相關(guān)愛(ài)好的視障者來(lái)說(shuō),這一問(wèn)題更是經(jīng)常遇到,一些插件幾乎是完全無(wú)法使用的。魚(yú)魚(yú)讀屏就是為了解決這個(gè)存在很久的問(wèn)題。
魚(yú)魚(yú)讀屏使用 OCR 服務(wù)來(lái)識(shí)別屏幕上出現(xiàn)的文本,將識(shí)別到的內(nèi)容對(duì)應(yīng)到屏幕的相應(yīng)位置上,使得你可以在其中進(jìn)行導(dǎo)航并完成點(diǎn)擊。在魚(yú)魚(yú)讀屏中,所有快捷鍵都使用修飾鍵 Command + Shift + Option,在本文之后提到這一組合時(shí),我會(huì)直接使用 CSO 來(lái)表示。
使用非常簡(jiǎn)單,在開(kāi)始使用時(shí),首先按下 CSO + C 來(lái)截取整個(gè)屏幕或者按下 CSO + V 來(lái)截取顯示在最前面獲取到焦點(diǎn)的窗口。你將會(huì)聽(tīng)到「正在上傳,請(qǐng)稍候?!埂缸R(shí)別完畢,發(fā)現(xiàn)了XX個(gè)項(xiàng)目?!勾藭r(shí)程序已經(jīng)識(shí)別完你的屏幕截圖并將其轉(zhuǎn)換為一個(gè)可以導(dǎo)航的表格。這個(gè)表格不會(huì)顯示在屏幕上,而是直接通過(guò)按鍵和語(yǔ)音來(lái)交互的。
接下來(lái)你可以使用 CSO + T 和 CSO + Y 來(lái)在項(xiàng)目之間進(jìn)行移動(dòng)。列表會(huì)按照項(xiàng)目在屏幕上的位置縱向排序,按 CSO + G 和 CSO + H 可以在列之間直接移動(dòng)。在移動(dòng)的過(guò)程中,鼠標(biāo)也會(huì)被移動(dòng)到你正在閱讀的文本上,方便你與周圍的非視障者進(jìn)行交流。
找到需要點(diǎn)擊的按鈕后,按下 CSO + U 即可點(diǎn)擊項(xiàng)目,按下 CSO + I 可以右鍵點(diǎn)擊項(xiàng)目。因?yàn)樵陂喿x過(guò)程中鼠標(biāo)就被移動(dòng)了,所以也可以手動(dòng)操作鼠標(biāo)直接點(diǎn)擊。
每次畫(huà)面產(chǎn)生變化時(shí),需要重新進(jìn)行一次識(shí)別來(lái)刷新結(jié)果列表。記不住快捷鍵也沒(méi)關(guān)系,所有的快捷鍵都有列在菜單欄圖標(biāo)的菜單中可以隨時(shí)查看。
根據(jù)實(shí)際的使用情況,魚(yú)魚(yú)讀屏設(shè)計(jì)了一些優(yōu)化使用體驗(yàn)的方法。
為了能夠提高 OCR 識(shí)別結(jié)果的可用性,我設(shè)計(jì)了一些可選的過(guò)濾器。如把只包含標(biāo)點(diǎn)符號(hào)的這種無(wú)效內(nèi)容刪除,把只包含數(shù)字的無(wú)效內(nèi)容刪除等。這主要是為了解決 OCR 服務(wù)會(huì)把一些圖標(biāo)識(shí)別為文字的問(wèn)題,比如小三角被讀成 0 之類的。如果不刪掉就會(huì)出現(xiàn) 「零零零零零零零」的尷尬局面。這些過(guò)濾器可以在偏好設(shè)置中自己選擇開(kāi)關(guān)。
另外 OCR 提供了微軟谷歌和百度三家的識(shí)別服務(wù)可以選擇,您可以選擇最適合您的服務(wù)來(lái)使用,默認(rèn)軟件會(huì)使用微軟的引擎識(shí)別。其中谷歌的識(shí)別率是理論上最好的,如果有條件比較推薦選擇使用。
此外程序還針對(duì)中文用戶一直會(huì)遇到的語(yǔ)音問(wèn)題做了處理。由于在中文狀態(tài)下 VoiceOver 會(huì)使用中文的語(yǔ)音閱讀英文,發(fā)音非常的 Chinglish,很多時(shí)候你完全不知道他在說(shuō)啥。魚(yú)魚(yú)讀屏在閱讀過(guò)程中遇到純英語(yǔ)的字符串,會(huì)主動(dòng)選擇英語(yǔ)語(yǔ)音來(lái)朗讀,就不會(huì)出現(xiàn)以上的問(wèn)題了。由于 macOS 的語(yǔ)言識(shí)別準(zhǔn)確度很差,所以目前我會(huì)把所有的語(yǔ)言都解釋為中文或英文,針對(duì)其他語(yǔ)言的適配方案還在開(kāi)發(fā)中。
由于軟件才剛發(fā)布不久,可能會(huì)出現(xiàn)各種各樣的問(wèn)題,如果有任何疑問(wèn),可以通過(guò)偏好設(shè)置關(guān)于選項(xiàng)卡中的「聯(lián)系開(kāi)發(fā)者」發(fā)送郵件。
「因?yàn)楣ぷ髦嘞矚g玩一玩電腦編曲,會(huì)經(jīng)常使用到一些軟音源和效果插件。然而這些音源和插件很多情況下是無(wú)法通過(guò)旁白進(jìn)行操作的,所以在平時(shí),我只能通過(guò)明眼人幫忙點(diǎn)擊,或是自己通過(guò)各種辦法胡亂摸索。因此,當(dāng)我剛拿到這款軟件時(shí),便懷著無(wú)比激動(dòng)的心情打開(kāi)了平時(shí)無(wú)法操作的一款軟音源。當(dāng)我按照魚(yú)魚(yú)讀屏的操作說(shuō)明,用熱鍵開(kāi)始瀏覽返回的結(jié)果時(shí),驚喜的發(fā)現(xiàn),讀屏能完美的朗讀到音源的參數(shù)信息,雖然這樣還無(wú)法使用音源的全部功能,但相比之前那種胡亂摸索的操作而言,已經(jīng)方便很多很多了。而且,魚(yú)魚(yú)讀屏有個(gè)很貼心的功能,就是當(dāng)我們?yōu)g覽OCR返回的結(jié)果時(shí),鼠標(biāo)指針會(huì)跟隨我們的瀏覽過(guò)程,隨時(shí)聚焦于我們當(dāng)下瀏覽到的項(xiàng)目,這樣當(dāng)我們與明眼人進(jìn)行交流的過(guò)程中,明眼人通過(guò)鼠標(biāo)能夠很明確的看到我們的瀏覽過(guò)程。從而能夠效率更高的給以幫助?!?/p>
全文: GitHub
「旁白用戶現(xiàn)在可以用它操作很多之前操作不了的第三方應(yīng)用了。在現(xiàn)階段蘋(píng)果還沒(méi)有推出 macOS 的屏幕識(shí)別功能的情況下,這是最完美的解決方案,也是全世界唯一一款此類工具。推薦所有的 macOS 視障用戶下載?!?/p>
這位朋友制作了一個(gè)語(yǔ)音演示,可以點(diǎn)此下載音頻文件:GitHub
我開(kāi)始做這個(gè) App 其實(shí)是因?yàn)?@賈祎涵 找我詢問(wèn)關(guān)于我另一款 App 無(wú)障礙優(yōu)化的問(wèn)題。在聊天的時(shí)候提到現(xiàn)在 macOS 上有很多 VoiceOver 完全沒(méi)法讀的 App,只能用 OCR 之類的東西來(lái)解決,但是卻從來(lái)沒(méi)有開(kāi)發(fā)者給 Mac 用戶做這樣的工具。他找了很多開(kāi)發(fā)者都沒(méi)有人愿意做。一方面原因是因?yàn)?Mac 開(kāi)發(fā)本身很麻煩,另一方面也是因?yàn)檫@種會(huì)把鼠標(biāo)挪來(lái)挪去的玩意過(guò)審難度很大。我一開(kāi)始也不確定能不能做,直到過(guò)審前我都不確定這玩意能不能成。不管怎么樣現(xiàn)在成功上架了,但是需要改進(jìn)的地方還有很多,希望各位盲人朋友多來(lái)試試,給我提供反饋。
本文轉(zhuǎn)發(fā)自魚(yú)魚(yú)讀屏開(kāi)發(fā)者原創(chuàng)文章。
]]>