站長資訊網
        最全最豐富的資訊網站

        為什么微軟 WSL 的默認終端輸入體驗比其他同類的應用好

          一名開發者(下用Nick代稱)在 Windows Terminal的GitHub repo中發表了一個不是反饋問題的 issue ——他只是好奇該終端擁有這種如此順滑輸入的效果是如何實現的。

        為什么微軟 WSL 的默認終端輸入體驗比其他同類的應用好

          Nick覺得這種順滑感是其他Windows應用都不具備的,甚至是最輕量的 notepad.exe 都未能提供這種輸入體驗。他還問到,這種 UI增強功能將來是否會應用于所有Windows應用程序。

          很快,負責此項目的Windows開發團隊成員(@miniksa)對Nick的疑問進行了解答。

          miniksa表示,保持在WSL(Windows Subsystem for Linux)默認終端輸入內容的速度比其他應用快,這實際上就是他們唯一的工作!除此之外,也可能是因為他們必須使用Windows最舊和最低級別的API來完成此項工作。

          WSL的默認終端不像 Electron等框架那樣涉及到許多其他的層或框架,它有一個并不特別的裸窗口,并且沒有任何附加組件。他們會從窗口消息(window messages)而不是某種事件框架((WPF, WinForms, UWP, Electron))來處理鍵入的內容,而這些內容是通過內核傳輸過來的。接著,他們使用GDI的PolyTextOut將文本直接轉儲到窗口而不帶多余的裝飾。

          miniksa解釋道,notepad.exe確實很輕量,不過在其窗口上也具有多個控件,并且可能在編輯控件中使用某種庫、框架來確定其文本布局(也可能正在使用其他庫或框架進行國際化支持…),這些都使得它們的輸入速度比不上WSL默認終端。當然,WSL也需要進行權衡取舍,它不像其他應用那樣提供完全的國際化支持。

          為什么要這樣做?第一,conhost.exe已十分陳舊。它必須使用所有內容的裸機底層,因為它是在創建其他大多數框架之前創建的。第二,它需要保持盡可能底層的級別,而且它是用C/C++編寫的,它需要盡可能保持底層的狀態以方便提供給第三方使用。

          至于其他Windows應用是否有機會用上這種順滑的輸入效果,miniksa覺得幾乎是沒機會。這些應用能夠以一種簡單的方式用任何一門語言來調用一種方法和布局文本(layout text),而無需手動計算像素或關心它們的字體該采用哪種樣式。而恰好miniksa手動計算像素、滑動區域和數學應用區域等的方式正是使得WSL默認終端輸入速度更快的原因。

        特別提醒:本網信息來自于互聯網,目的在于傳遞更多信息,并不代表本網贊同其觀點。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,并請自行核實相關內容。本站不承擔此類作品侵權行為的直接責任及連帶責任。如若本網有任何內容侵犯您的權益,請及時聯系我們,本站將會在24小時內處理完畢。

        贊(0)
        分享到: 更多 (0)
        網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
        主站蜘蛛池模板: 国产一区二区精品久久岳| 久久精品成人影院| 国产乱码伦精品一区二区三区麻豆| 亚洲动漫精品无码av天堂| 91精品国产高清久久久久久91| 精品无码国产自产拍在线观看| 午夜精品久久久内射近拍高清 | 国产欧美日韩综合精品一区二区三区 | 国产精品亚洲精品观看不卡| 少妇人妻无码精品视频app| 久久精品国产精品亚洲下载| 青青草国产精品欧美成人| 成人区人妻精品一区二区不卡网站 | 日本精品在线视频| 91精品欧美综合在线观看| 老司机67194精品线观看| 一本久久a久久精品亚洲| 欧美在线精品永久免费播放| 久久精品国产亚洲Aⅴ香蕉| 国产精品免费αv视频| 99爱在线视频这里只有精品| 欧美精品免费观看二区| 国产乱码精品一区二区三区四川人| 精品国产VA久久久久久久冰| 亚洲精品蜜桃久久久久久| 亚洲国产精品成人午夜在线观看| 久草欧美精品在线观看| 精品国产婷婷久久久| 精品福利一区二区三区| 国产原创精品 正在播放| 国产一区二区精品尤物| 久久久久久亚洲精品不卡| 久久人人爽人人精品视频| 久久精品国产色蜜蜜麻豆| 日韩精品人成在线播放| 午夜精品久久久久久| 亚洲一区爱区精品无码| 亚洲精品字幕在线观看| 亚洲2022国产成人精品无码区| 亚洲第一极品精品无码久久| 久久免费的精品国产V∧|