欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

flutter字體,flutter字體加粗

Flutter_為啥安卓字體效果和iOS不一樣?3

1、除了兩個(gè)平臺(tái)的系統(tǒng)默認(rèn)字體不一樣之外。

創(chuàng)新互聯(lián)專(zhuān)注于奎文網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供奎文營(yíng)銷(xiāo)型網(wǎng)站建設(shè),奎文網(wǎng)站制作、奎文網(wǎng)頁(yè)設(shè)計(jì)、奎文網(wǎng)站官網(wǎng)定制、微信小程序開(kāi)發(fā)服務(wù),打造奎文網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供奎文網(wǎng)站排名全網(wǎng)營(yíng)銷(xiāo)落地服務(wù)。

2、在設(shè)置字體字重(字體粗細(xì))時(shí)。

ios的字體粗細(xì)和下面截圖中的一一對(duì)應(yīng)。

安卓的w500及以下都是正常字體,安卓的w600和w700相當(dāng)于ios的w500,安卓的w800及以后都是一樣粗細(xì)。

當(dāng)我把PingFang字體文件,導(dǎo)入并使用后。

Flutter 上字體的另類(lèi)玩法:FontFeature

在以前的 《Flutter 上默認(rèn)的文本和字體知識(shí)點(diǎn)》 和 《帶你深入理解 Flutter 中的字體“冷”知識(shí)》 中,已經(jīng)介紹了很多 Flutter 上關(guān)于字體有趣的知識(shí)點(diǎn),而本篇講繼續(xù)介紹 Flutter 上關(guān)于 Text 的一個(gè)屬性: FontFeature , 事實(shí)上相較于 Flutter ,本篇內(nèi)容可能和前端或者設(shè)計(jì)關(guān)系更密切 。

什么是 FontFeature ? 簡(jiǎn)單來(lái)說(shuō)就是影響字體形狀的一個(gè)屬性 ,在前端的對(duì)應(yīng)領(lǐng)域里應(yīng)該是 font-feature-settings ,它有別于 FontFamily ,是用于指定字體內(nèi)字的形狀的一個(gè)參數(shù)。

我們知道 Flutter 默認(rèn)在 Android 上使用的是 Roboto 字體,而在 iOS 上使用的是 SF 字體,但是其實(shí) Roboto 字體也是分很多類(lèi)型的,比如你去查閱手機(jī)的 system/fonts 目錄,就會(huì)發(fā)現(xiàn)很多帶有 Roboto 字樣的字體庫(kù)存在。

所以 Roboto 之類(lèi)的字體庫(kù)是一個(gè)很大的字體集,不同的 font-weight 其實(shí)對(duì)應(yīng)著不同的 ttf ,例如默認(rèn)情況下的 Roboto 是不支持 font-weight 為 600 的配置 :

所以如下圖所示,如果我們?cè)O(shè)置了 w400 - w700 的 weight ,可以很明顯看到中間的 500 和 600 其實(shí)是一樣的粗細(xì),所以在 設(shè)置 weight 或者設(shè)計(jì) UI 時(shí),就需要考慮不同平臺(tái)上的 weight 是否支持想要的效果 。

回歸到 FontFeature 上,那 Roboto 自己默認(rèn)支持多少種 features 呢? 答案是 26 種,它們的編碼如下所示,運(yùn)行后效果也如下圖所示,從日常使用上看,這 26 種 Feature 基本滿(mǎn)足開(kāi)發(fā)的大部分需求。

而 iOS 上的 SF pro 默認(rèn)支持 39 種 Features , 它們的編碼如下所示,運(yùn)行后效果也如下圖所示,可以看到 SF pro 支持的 Features 更多。

所以可以看到,并不是所有字體支持的 Features 都是一樣的,比如 iOS 上支持 sups 上標(biāo)顯示和 subs 下標(biāo)顯示,但是 Android 上的 Roboto 并不支持,甚至很多第三方字體其實(shí)并不支持 Features 。

有趣的是,在 Flutter Web 有一個(gè)渲染文本時(shí)會(huì)變模糊的問(wèn)題 #58159 ,這個(gè)問(wèn)題目前官方還沒(méi)有修復(fù),但是你可以通過(guò)給 Text 設(shè)置任意 FontFeatures 來(lái)解決這個(gè)問(wèn)題。

最后,如果對(duì) FontFeature 還感興趣的朋友,可以通過(guò)一下資料深入了解,如果你還有什么關(guān)于字體上的問(wèn)題,歡迎留言討論。

基于網(wǎng)友的問(wèn)題再補(bǔ)充一下拓展知識(shí),畢竟這方面內(nèi)容也不多 。

事實(shí)上在 dart 里就可以看到對(duì)應(yīng) FontWeight 約定俗稱(chēng)用的是字體集里的什么字體:

所以如果對(duì)于默認(rèn)字體有疑問(wèn),可以在你的手機(jī)字體找找是否有對(duì)應(yīng)的字體, 比如雖然我們說(shuō) roboto 沒(méi)有 600 ,但是如果是 roboto mono 字體集是有 600 的 fontweight ,甚至還有 600 斜體: 。

另外注意這是 Flutter 而不是原生,具體實(shí)現(xiàn)調(diào)用是在 Engine 的 paragraph_skia.cc 和 paragraph_builder_skia.cc 下對(duì)應(yīng)的 setFontFamilies 相關(guān)邏輯,當(dāng)然默認(rèn)字體庫(kù)指定在 typography.dart 下就看到,例如 'Roboto' 、 '.SF UI Display' 、 '.SF UI Text' 、 '.AppleSystemUIFont' 、 'Segoe UI' :

另外如果你在 Mac 的 Web 上使用 Flutter Web,可以看到指定的是 .AppleSystemUIFont ,而對(duì)于 .AppleSystemUIFont 它其實(shí)不算是一種字體,而是蘋(píng)果上字體的一種集合別稱(chēng):

[圖片上傳失敗...(image-40f5ce-1648368234737)]

還有,如果你去看 Flutter 默認(rèn)自帶的 cupertino/context_menu_action.dart ,就可以看到一個(gè)有趣的情況:

當(dāng)然,前面我們說(shuō)了那么多,主要是針對(duì)英文的情況下,而在中文下還是有差異的 ,之前的文章也介紹過(guò):

例如,在蘋(píng)果上的簡(jiǎn)體中文其實(shí)會(huì)是 PingFang SC 字體,對(duì)應(yīng)還有 PingFang TC 和 PingFang HK 的繁體集,而關(guān)于這個(gè)問(wèn)題在 Flutter 上之前還出現(xiàn)過(guò)比較有意思的 bug :

當(dāng)然后續(xù)的 #16709 修復(fù)了這個(gè)問(wèn)題 ,而在以前的文章我也講過(guò),當(dāng)時(shí)我遇到了 “Flutter 在 iOS 系統(tǒng)上,系統(tǒng)語(yǔ)言是韓文時(shí),在和中文一起出現(xiàn)會(huì)導(dǎo)致字體顯示異常" 的問(wèn)題 :

解決方法也很簡(jiǎn)單,就是給 fontFamilyFallback 配置上 ["PingFang SC" , "Heiti SC"] 就可以了,這是因?yàn)轫n文在蘋(píng)果手機(jī)上使用的應(yīng)該是 Apple SD Gothic Neo 這樣的超集字體庫(kù),【廣】這個(gè)字符在這個(gè)字體集上是不存在的,所以就變成了中文的【廣】;

所以可以看到,字體相關(guān)是一個(gè)平時(shí)很少會(huì)深入接觸的東西,但是一旦涉及多語(yǔ)言和繪制,就很容易碰到問(wèn)題的領(lǐng)域 。

Flutter 深色(暗黑)模式下 狀態(tài)欄字體顏色為白色

brightness: Brightness.light,(黑色)

brightness: Brightness.dark,(白色)

這種設(shè)置狀態(tài)欄字體顏色的方法僅在手機(jī)淺色模式下有效,當(dāng)用戶(hù)選擇深色(暗黑)模式后,該方法失效,狀態(tài)欄字體顏色統(tǒng)一變?yōu)榘咨豢筛摹?/p>

當(dāng)前題目:flutter字體,flutter字體加粗
本文路徑:http://chinadenli.net/article44/dsgephe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司商城網(wǎng)站微信小程序網(wǎng)站設(shè)計(jì)公司品牌網(wǎng)站建設(shè)網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司