【WPF實用教程1】WPF使用Iconfont圖標字體

前言:

目前前端開發,比如Android、Web等,大家習慣了使用iconfont來顯示簡單的圖標顯示,不需要像原來之前用PS了。本節演示如何使用WPF使用IconFont圖標字體(如下圖所示效果)。

 

關於IconFont:

IconFont-阿里巴巴體驗團隊傾力打造,功能很強大且圖標內容很豐富的矢量圖標庫,提供矢量圖標下載、在線存儲、格式轉換等功能。

官網鏈接:https://www.iconfont.cn/

 

登陸並註冊IconFont:

登陸官網https://www.iconfont.cn/,註冊並登陸

 

創建IconFont項目:

 

依次點擊"圖標管理"\"我的項目",進入如下頁面

在"我的項目"頁面,點擊下圖箭頭所指的按鈕

新建項目,彈出對話框

 

這裏我僅修改項目名稱爲microui,其它的默認。

【特別注意一點:注意一下上面的FontClass/Symbol前綴和Font Family內容,這兩個具體是有什麼用,我在最後會說明。】

修改項目名稱,點擊"新建"按鈕就可以了。

從上圖就可以看到新建的項目中暫時沒有任何圖標,接下來我們就向其中添加一下圖標。

添加圖標至IconFont項目:

添加方法有很多,可以添加官網上的圖標,可以自己製作圖標上傳。這裏我僅添加官網上的圖標,在搜索框內輸入圖標內容,比如這裏搜索"掃碼"

如下爲搜索結果

隨便找一個圖標,鼠標放到上面

點擊箭頭所指的"添加入庫"圖標,可以看到購物車的徽標變成了數字1

再搜索並添加1個圖標,比如搜索詞"刪除"、"搜索",可以看到右上角購物車徽標變成了3

點擊右上角的"購物車",右側滑出頁面

這裏可以直接按鈕"下載素材",但是我不想這樣做,因爲方便後續管理圖標,所以我點擊按鈕"添加至項目"。

 

選擇剛創建的項目"microui",然後點擊"確定"按鈕。頁面跳轉到圖標管理界面

我們點擊上圖箭頭所指的"下載至本地"

如下圖,我們已經下載到本地了

接下來我們就要使用創建WPF工程了。

VS創建WPF工程:

使用VS創建WPF工程步驟不再贅述,如下創建好的工程

導入IconFont字體到WPF工程:

我們解壓之前下載的download.zip文件夾(解壓後存放路徑沒有要求),解壓後的文件夾內容如下

我們WPF只需要使用其中的iconfont.ttf。

鼠標右擊工程名,依次點擊"添加"\"現有項",選擇iconfont.ttf

點擊"添加"按鈕,可以看到已經被加入到工程中

注意:當字體文件iconfont.ttf添加到項目中後,解壓的download文件夾就不需要了,刪除都可以的,因爲iconfont.ttf已經被自動拷貝到了工程目錄下。

下面我們演示一下如何使用圖標。

使用IconFont圖標:

 

修改MainWindow.xaml代碼如下

從圖中可以看到我將TextBlock的FontFamily設置爲"/#iconfont",其中符號'/'表示當前程序集根路徑,符號'#'是引用外部字體的固定標識,"iconfont"表示字體的名字。當然這裏的iconfont就和咱們創建項目時的參數有關係了

至於和哪個有關係,後面再講。

FontFamily內容格式一般可以爲"/命名空間;component/[路徑]#[字體名稱]",比如我們這裏也可以設置爲下圖箭頭所指的

這種命名規則是標準靠譜的。

 

同樣的,我們在編寫的時候,注意到Text值爲"",這是什麼鬼?這個值就是我們添加到IconFont項目的時候,圖標自動添加的unicode值

同時圖標的顏色大小可以使用Foreground和FontSize變化,是不是更方便了。

 

下面我再移動一下圖標文件的位置,如下圖新建一個文件夾Fonts,把iconfont.ttf拖拽到Fonts文件夾內

代碼修改FontFamily如下

清理並重新生成工程運行

依然可以顯示。拖拽到新文件夾只是爲了演示文件iconfont.ttf添加到其他文件夾時,FontFamily怎麼設置。

創建IconFont時的Symbol前綴:

我之前在創建IconFont工程時提到了,FontClass/Symbol前綴和Font Family內容,這兩個具體是有什麼用?

下面是我另外創建的一個工程

其中Symbol前綴爲:dazhuang

FontFamily內容爲:dzfont

並向其中添加了一個圖標

將其下載到本地,並將iconfont.ttf導入工程後

可以看到箭頭所指的地方變成了我剛纔設置的FontFamily。至於Symbol前綴,實際上在WPF工程裏沒有用到,而是在HTML自動生成的CSS中用到了,

擴展:

你也可以在樣式表中使用,如下我供下載的demo代碼

/////////////////////////////////////////////////////////////////////////////////////////

** 原創文章,轉載請附該部分聲明

** 來源:https://blog.csdn.net/mybelief321

** 作者:玖零大壯

/////////////////////////////////////////////////////////////////////////////////////////

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章