


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第WPF使用FontAwesome字體圖標(biāo)在WPF程序中,一般接觸到的矢量圖標(biāo)資源有XAML、SVG、字體這三種格式。XAML是標(biāo)準(zhǔn)格式就不說了,SVG并不是直接支持的,不過微軟提供了ExpressionDesign可以非常方便我們將其轉(zhuǎn)換為XAML格式的資源。而對于字體,雖然WPF是直接支持的,但由于字體圖標(biāo)其特殊性,要將其顯示為圖標(biāo)還是需要費點勁的。本文這里就以Font-Awesome為例,介紹一下如何在WPF中使用字體圖標(biāo)。
首先添加一個樣式,為了使用方便,建議直接做為全局樣式:
Stylex:Key="FontAwesome"
SetterProperty="TextElement.FontFamily"Value="pack://application:,,,/Resource/#FontAwesome"/
SetterProperty="TextElement.FontSize"Value="14"/
/Style
請注意我這里的FontFamily的設(shè)置,我是采用的嵌入字體的方式,這樣在沒有裝該字體的機(jī)器上也是能正確顯示圖標(biāo)的。
然后就可以直接使用該樣式了:
Grid
TextBlockText="#xf0c2;"Foreground="Blue"
VerticalAlignment="Center"HorizontalAlignment="Center"FontSize="22"/
/Grid
運(yùn)行后可以得到如下圖標(biāo)了:
原理并不復(fù)雜,將TextBlock的Text設(shè)置為圖標(biāo)對應(yīng)的文字,設(shè)置其FontFamily為FontAwesome即可。但這里有一個小的知識點就是:一般來說,fortawesome之類的圖標(biāo)字體中圖標(biāo)對應(yīng)的文字都是不可以通過輸入法直接輸入的,只能直接輸入Unicode編碼,WPF在XAML中使用Unicode編碼輸入的方式和HTML是一樣的,例如0xf0c2就對應(yīng)為#xf0c2;。
除了TextBlock外,我這里寫的樣式可以應(yīng)用于任何支持字體顯示的控件的:
StackPanel
LabelContent="#xf0c2;"/
ButtonContent="#xf0c2;"/
ContentControlContent="#xf0c2;"/
/StackPanel
運(yùn)行后效果如下:
最后一個問題就是如何找到我們的圖標(biāo)和對應(yīng)的Unicode編碼了,雖然可以通過安裝字體后通過字符映射表查詢,但是這樣只能看到圖形,而我們更希望先根據(jù)文字描述找圖形,再根據(jù)圖形找對應(yīng)的十六進(jìn)制值。好在一般那些字體圖標(biāo)網(wǎng)站上都列舉了其對應(yīng)關(guān)系的。對于fortawesome字體,直接訪如下網(wǎng)頁即可:http://fortawesome.github.io/Font-Awesome/cheatsheet/
或者,也可以使用我這里寫的一個XAML擴(kuò)展,將Font-awsome的字體轉(zhuǎn)換了為枚舉。這樣可以在代碼中使用名字了,程序可讀性要好得多。
classFontValueMarkupExtension:MarkupExtension
publicFontDescriptionFont{get;set;}
publicoverrideobjectProvideValue(IServiceProviderserviceProvider)
varcharactor=typeof(FontDescription).GetField(Font.ToString()
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 代加工合同范例乙方
- 濕地公園建設(shè)項目管理計劃
- 寵物行業(yè)衛(wèi)生與防疫措施
- 電池循環(huán)測試數(shù)據(jù)管理系統(tǒng)租賃與維護(hù)服務(wù)合同
- 高端游艇租賃與專業(yè)保養(yǎng)維護(hù)服務(wù)協(xié)議
- 游戲IP授權(quán)合作:與電商平臺合作推廣協(xié)議
- 電子證據(jù)存證真實性認(rèn)證及法律效力保障服務(wù)協(xié)議
- 短視頻內(nèi)容合作終止及知識產(chǎn)權(quán)歸屬協(xié)議
- 婚后域名分割及財產(chǎn)分配協(xié)議
- 辦公樓建筑樓梯改造工程安全防護(hù)協(xié)議
- 2023北京順義區(qū)招錄鄉(xiāng)村振興協(xié)理員及考察筆試歷年典型考題及考點剖析附答案帶詳解
- 跟著音樂游中國智慧樹知到期末考試答案章節(jié)答案2024年廣州大學(xué)
- 傳統(tǒng)文化醒獅模板
- 教科版四年級上冊科學(xué)第一單元《聲音》測試卷附答案(精練)
- (高清版)JTGT D81-2017 公路交通安全設(shè)施設(shè)計細(xì)則
- QC/T 629-2021 汽車遮陽板-PDF解密
- FZT 64056-2015 潔凈室用擦拭布
- 小學(xué)數(shù)學(xué)五年級下冊通分練習(xí)100題附答案
- 混凝土強(qiáng)度評定表(自動計算)
- 人音版四年級音樂下冊全冊教學(xué)設(shè)計教案表格式
- 心臟體格檢查教案
評論
0/150
提交評論