如何在React項目中引入字體文件並使用詳解
前言
在做React項目的時候,發現UI設計給出的設計稿裡,某些文字所用的字體,系統默認不支持。比如設計需要的這個字體:EmerlandRegular,即使在css裡將文字字體設置為他們,實際效果也顯示不出來。
<Typography style={{ fontSize:'22px', fontFamily:'EmerlandRegular', textAlign:'center', color:'#3A3A3A', marginTop: '10px', }} > This teacher is good </Typography>
期待效果:
實際效果:
實際上是因為這個字體不在系統的預置字體庫裡,所以找不到,就顯示瞭默認的字體樣式。要想達到期待的字體效果,需要把字體文件引入項目才行。
下面講下如何引入字體文件並使用
一、下載字體包
這一步就不多說瞭,字體包從網上找,或者讓UI設計師提供給你。
下載好的字體包一般是個壓縮包,打開後有多個字體文件,如圖:
這麼多字體文件,哪個是我們需要的呢,看文件名,分為兩種,帶italic的和不帶的,顯然帶italic的就是斜體字文件,而不帶italic的就是我們想要的正常字體文件。但是後綴又有otf, ttf, woff幾種,選哪個呢,其實這幾種都是文件格式有區別,顯示出來一般是沒什麼區別的,就跟word文檔也可以存為好幾種文檔後綴一樣,可以隨意選一種先看看。這裡我們使用 Emerland.ttf文件。
二、將字體文件放到項目裡
1.在項目public文件夾下新建一個fonts文件夾,用於存放字體,然後將字體文件復制到這個文件夾下。
2.在public下新建一個font.css,文件內容裡加上對新引入的字體的定義:
@font-face { font-family: EmerlandRegular; src: url('./fonts/Emerland.ttf'); }
這就聲明瞭一種新字體,字體名叫EmerlandRegular,字體文件的路徑就是src指定的路徑。
上面這兩步如圖:
3.修改index.html文件,添加這一行:
<link rel="stylesheet" href="%PUBLIC_URL%/font.css" rel="external nofollow" >
添加位置如圖:
這樣,就成功的把字體文件引入項目瞭。
三、使用新字體
因為我們在font.css裡給新字體起的名叫EmerlandRegular,所以在使用的時候,就像以前那樣,給需要的文字設置fontFamily為"EmerlandRegular"即可。
fontFamily:'EmerlandRegular'
運行即可看到字體效果已經成功顯示瞭。
總結
到此這篇關於如何在React項目中引入字體文件並使用的文章就介紹到這瞭,更多相關React項目引入字體文件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- React使用公共文件夾public問題
- JavaScript中FontFace對象的使用方式
- React Native 中添加自定義字體的方法
- 基於python詳解PyScript到底是什麼
- 基於javascript實現移動端輪播圖效果