麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

WPF字體圖標——IconFont

2019-11-11 04:49:01
字體:
來源:轉載
供稿:網友

一、字體圖標概述

①字體圖標其實就是把矢量圖形打包到字體文件里,以后就可以像使用一般外置字體一樣的使用它,因此Winform、WPF中都是可以用的。

②可以在很多地方使用圖標字體,包括自定義控件、自定義樣式、模板等。

③字體圖標優點:

字體文件非常小,比使用png等圖片文件要小很多和普通字體一樣,是矢量的,可任意放大縮小,且不會失真網上開源字體圖標很多,很容易獲取,項目開發中需要的絕大部分圖標都可以找到,非常方便

二、在WPF中使用字體圖標

①獲取字體圖標,推薦阿里巴巴開源字體,如何下載字體參考它網站的下載說明,解壓下載的字體會得到以下文件:

iconfont.tff是我們需要的字體圖標庫文件

demo_unicode.html是字體庫對應的字體的標識,如下圖:

以后通過使用上圖紅色方框中的標識,即可獲得對應的字體圖標

②將字體圖標添加到項目新建的Resources文件夾中,并設置其生成操作為"Resource",如下圖:

③定義樣式

使用TextBlock作為圖標顯示的容器,因此定義一個TextBlock的樣式即可,如下所示。其中"SK2015"為字體名稱,以前阿里巴巴開源字體庫下載的時候可以修改字體名稱,現在好像修改不了,默認字體名稱為"iconfont",有朋友發現如何修改字體名稱的話,請在下面給我留言,謝謝!

MyIconFontStyle.xaml代碼如下:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/PResentation"                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                    xmlns:local="clr-namespace:IconFontDemo">    <Style x:Key="iFont" TargetType="TextBlock">        <Setter Property="FontFamily" Value="/IconFontDemo;component/Resources/#SF2015"/>        <Setter Property="TextAlignment" Value="Center"/>        <Setter Property="HorizontalAlignment" Value="Center"/>        <Setter Property="VerticalAlignment" Value="Center"/>        <Setter Property="FontSize" Value="20"/>    </Style></ResourceDictionary>注意:上面的FontFamily屬性也可以這樣設置<Setter Property="FontFamily" Value="/Resources/#SF2015"/>但是為了以后將字體樣式定義到另外一個程序集,還是推薦使用全的相對路徑,否則會出現找不到資源的問題。

④在App.xaml中引用定義的樣式資源

<application x:Class="IconFontDemo.App"             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"             xmlns:local="clr-namespace:IconFontDemo"             StartupUri="MainWindow.xaml">    <Application.Resources>        <ResourceDictionary>            <ResourceDictionary.MergedDictionaries>                <ResourceDictionary Source="MyIconFontStyle.xaml"/>            </ResourceDictionary.MergedDictionaries>        </ResourceDictionary>    </Application.Resources></Application>⑤在xaml中使用字體圖標,MainWindow.xaml代碼
<Window x:Class="IconFontDemo.MainWindow"        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"        xmlns:local="clr-namespace:IconFontDemo"        mc:Ignorable="d"        Title="MainWindow" Height="350" Width="525" Background="Blue">    <StackPanel Orientation="Horizontal">        <TextBlock Text="" Style="{StaticResource iFont}" FontSize="50" Margin="3" Foreground="White"></TextBlock>        <TextBlock Text="" Style="{StaticResource iFont}" FontSize="60" Margin="3" Foreground="SandyBrown"></TextBlock>        <TextBlock Text="" Style="{StaticResource iFont}" FontSize="70" Margin="3" Foreground="#FB0AE8"></TextBlock>        <TextBlock x:Name="ios" Style="{StaticResource iFont}" FontSize="80" Margin="3" Foreground="Chartreuse"></TextBlock>        <TextBlock x:Name="android" Style="{StaticResource iFont}" FontSize="90" Margin="3" Foreground="#FEDB11"></TextBlock>    </StackPanel></Window>

很奇怪Text屬性在網頁上無法顯示,三個屬性分別為:Text="&#xe600;" Text="&#xe61c;" Text="&#xe63d;"

⑥在CS代碼中使用字體圖標,MainWindow.xaml.cs代碼:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows;using System.Windows.Controls;using System.Windows.Data;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Imaging;using System.Windows.Navigation;using System.Windows.Shapes;namespace IconFontDemo{    /// <summary>    /// MainWindow.xaml 的交互邏輯    /// </summary>    public partial class MainWindow : Window    {        public MainWindow()        {            InitializeComponent();            ios.Text = "/xe602";            android.Text = "/xe60c";        }    }}⑦最終效果演示


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美成人午夜 | 欧美中文字幕在线视频 | av之家在线观看 | 羞羞的视频 | 国产日韩a| 欧美久久久一区二区三区 | 亚洲片在线观看 | 欧美成人精品一区 | 免费看污视频在线观看 | av在线免费播放网站 | 日本一级黄色大片 | 色无极影院亚洲 | 欧美日韩高清一区 | 午夜男人在线观看 | 一级网站| 线观看免费完整aaa 久久不雅视频 | 一级做a爱片毛片免费 | 在线视频 亚洲 | 色a综合 | 成年性羞羞视频免费观看无限 | 欧美日韩视频网站 | 久久久麻豆| 成人毛片100部免费观看 | 渔夫荒淫艳史 | 国产伦精品一区二区三区 | 国产精品久久久久久一区二区三区 | 国产午夜电影 | 国产毛片网站 | 日日狠狠久久 | 欧美精品久久久久久久久久 | 91精品国产综合久久婷婷香 | 一区二区三区欧美日韩 | 人禽l交免费视频观看 视频 | 色综合激情| 欧美一级毛片美99毛片 | 国产免费成人 | 久久久久久久国产视频 | 国产免费一区视频 | 日韩视频一区二区三区在线观看 | 黄色网址免费在线 | 国产精品自拍片 |