這篇文章呢,本來是不應該出現的,起因是一位老鐵看了之前的使用字型圖示的文章WPF使用ttf字型圖示 ,回報說到自己使用IconFont的字型圖示,無法在WPF中使用,于是跟着後面瞅了一眼,發現原來是這個樣子的!
首先呢,先去下載下傳一下這個圖示,這位老鐵呢,看重的是這套彩色的圖示SuperMap GIS産品彩色系功能圖示庫,收藏一下,然後打包下載下傳。下載下傳下來是一個壓縮包,檔案大概是這個樣子:

IconFont很貼心的給我們提供了一個圖示的預覽,就是這個demo_index.html,輕按兩下打開這個html檔案,可以看到:
裡面呢是長這個樣子的。其中
Unicode标簽頁下就是我們的字型圖示的樣子,我們引入檔案目錄中的iconfont.ttf,然後像之前文章中描述的,使用圖示下方提供的編碼就可以使用我們的字型圖示了。
Font class标簽頁下和Unicode标簽頁下的内容一緻,不過他裡面是提供給網頁使用的,引入對應的css,然後使用下方标注的類型名稱就可以使用(這不在我們的讨論範圍)。
可以看到上述的圖示呢都是純色的,預設給的是黑色,這裡也強調下,字型圖示就跟字型一樣,沒有過多的修飾,這裡的矢量圖示就是一種路徑,他們沒有過多的顔色描述,隻能是純色的。
重點來看下我們的Symbol标簽頁:
這裡的圖示就很豐富了,還自帶各種顔色,我們檢視一下網頁源代碼發現,他們是svg的圖示,可以了解為是由多個圖示組成的一種圖示,不同圖示有不同的顔色,最後變成這樣多彩的圖示,其實在WPF不會使用這種類型的圖示,一般都是直接使用字尾是svg的檔案,要麼就是直接以PNG圖檔的形式進行下載下傳,不過呢,為了了解這些圖示的構成, 還是嘗試在WPF中重制第一個圖示吧。
在下載下傳的檔案中,可以發現這些svg的圖示都儲存在iconfont.js的檔案中:
打開這個檔案,可以看到很多的symbol标簽,它們都有一個id與我們的界面中的id對應,然後此标簽下還有很多的path節點,這每一個path對應的即使一個繪制路徑:
稍微整理下,大概長下面這個樣子:
可以看到圖示有一個viewBox屬性,值為0 0 1024 1024,然後下面有四個path路徑,我們需要用到path路徑的d屬性和fill屬性。
建立我們的項目,添加一個Viewbox節點和一個Canvas節點,然後設定一下Canvas的大小為1024 x 1024,将我們的視窗也設定一樣的。然後拷貝上方的path節點下的d屬性和fill屬性,依次拷貝到WPF中Path節點中的Data屬性和Fill屬性,如下
運作我們的項目,就可以看到圖檔:
結束。
做個小科普, 水一篇,哈哈哈!
本文來自部落格園,作者:醜萌氣質狗,轉載請注明原文連結:https://www.cnblogs.com/choumengqizhigou/p/15690185.html
轉載請注明出處QQ群:560611514