title author date CreateTime categories
win10 uwp 打包第三方字体到应用
lindexi
2019-09-02 12:57:38 +0800
2018-2-13 17:23:3 +0800
Win10 UWP

有时候我们会把一些特殊字体打包到软件,因为如果找不到我们的字体会变为默认,现在很多字体图标我们用得好,有时候我们的应用会用很漂亮的字体,需要我们自己打包,因为用户一般是没有字体。
本文告诉大家如何在 UWP 内置字体,把字体打包到应用

UWP使用第三方字体

首先我们需要字体,这个字体下载,网上很多。http://font.chinaz.com/我在这网站下载,如果有人知道他的网站字体不是完全授权,请和我说,我就删除我的应用字体。

在网上下东西很要注意版权,有很多是我们不能直接拿来用。

我们简单在界面写一个 TextBlock

        <TextBlock Margin="10,100,10,10"
Text="Lov ms"></TextBlock>

然后我们能运行看到一个字“Lov ms"因为我对微软的love没有了最后

为什么在Margin写10,100,10,10因为上面有黑色会挡住。

第一步,我们去掉黑色左上角的调试,删除App.xaml.cs 下面的代码

# if DEBUG
if (System.Diagnostics.Debugger.IsAttached)
{
this.DebugSettings.EnableFrameRateCounter = true;
}
# endif

第二步,
大家可以看到我们的应用没有特殊字体,这时我们写一个我们系统不存在的字体And Love St.ttf ,如何设置字体,请看代码

        <TextBlock Margin="10,100,10,10"
FontFamily="And Love St.ttf"
Text="Lov ms"></TextBlock>

于是运行程序可以看到如下图

几乎看不到有变化

我们添加一个文件夹,用于存放字体

我把它叫 Font

把我们的字体放入。建议直接拖进去,uwp 导入字体是把字体放到解决方案的文件夹

在我们的字体类型写我们放进去字体,代码就是 路径#字体名称

假如我们的路径是Font/And Love St.ttf 名称And Love st,那么需要写的代码如下

注意路径是相对路径,和 页面放的位置有关。

        <TextBlock Margin="10,100,10,10"
FontFamily="Font/And Love St.ttf#And Love st"
Text="Lov ms" ></TextBlock>

写完之后,运行一下程序,可以看到好看的字体

参见:http://www.cnblogs.com/mycing/p/5658355.html

除了上面的方法,因为需要设置路径,比较难用,于是我提供一个方法,让大家可以简单使用字体。这个方法是把字体作为资源,这样比较容易写,请看代码

    <Page.Resources>
<FontFamily x:Key="Font" >Font/And Love St.ttf#And Love st</FontFamily>
</Page.Resources>

这样就可以在很多地方都使用,使用方法请看代码

        <TextBlock Margin="10,100,10,10"
FontFamily="{StaticReources Font}"
Text="Lov ms" ></TextBlock>

如果在后台代码需要使用设置字体,那么请使用下面的代码

 textBlock.FontFamily = newFontFamily("/Assets/Swiftel.ttf#Swiftel Base DEMO");

路径和页面的方法一样,注意使用的是相对路径,和代码所在有关。如果已经写在资源,那么请看我的博客win10 uwp 后台获取资源

需要注意,UWP 不支持 OTF 字体。

参见:UWP开发百科之---内置字体 - 快乐 就在你的心 的博客

http://www.c-sharpcorner.com/article/custom-fonts-in-windows-10-uwp-app/

2019-9-2-win10-uwp-打包第三方字体到应用的更多相关文章

  1. win10 uwp 打包第三方字体到应用

    有时候我们会把一些特殊字体打包到软件,因为如果找不到我们的字体会变为默认,现在很多字体图标我们用得好,有时候我们的应用会用很漂亮的字体,需要我们自己打包,因为用户一般是没有字体. UWP使用第三方字体 ...

  2. win10 uwp 如何打包Nuget给其他人

    原文:win10 uwp 如何打包Nuget给其他人 本文告诉大家,如果自己有做一些好用的库,如何使用 Nuget 打包之后上传,分享给大家. 首先需要知道一些 Nuget 打包需要知道的,请看 wi ...

  3. Win10 UWP版《芒果TV》v2.4.0直播超女,芒果台综艺一网打尽

    Win10 UWP版<芒果TV>直播超女,芒果台综艺一网打尽 Win10版UWP<芒果TV>自2015年9月登录商店以来,一直在持续更新,积极改进,拥有芒果台视频的独家点播和直 ...

  4. win10 uwp 发布旁加载自动更新

    在很多企业使用的程序都是不能通过微软商店发布,原因很多,其中我之前的团队开发了很久的应用,结果发现没有用户能从微软应用商店下载所以我对应用商店没有好感.但是作为一个微软粉丝,怎么能不支持 UWP 开发 ...

  5. Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App

    安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...

  6. Win10 UWP开发系列:实现Master/Detail布局

    在开发XX新闻的过程中,UI部分使用了Master/Detail(大纲/细节)布局样式.Win10系统中的邮件App就是这种样式,左侧一个列表,右侧是详情页面.关于这种 样式的说明可参看MSDN文档: ...

  7. Win10 UWP开发实现Bing翻译

    微软在WP上的发展从原来的Win7到Win8,Win8.1,到现在的Win10 UWP,什么是UWP,UWP即Windows 10 中的Universal Windows Platform简称.即Wi ...

  8. Objective-C Runtime使用之全局字体替换为第三方字体(iOS)

    前言: iOS开发里头,常用的设置字体方式是使用UIFont的systemFontOfSize这个Class Method,在一半情况下都算够用. 最近有设计师朋友问能不能在客户端中使用特定的字体,答 ...

  9. Win10/UWP开发—使用Cortana语音与App后台Service交互

    上篇文章中我们介绍了使用Cortana调用前台App,不熟悉的移步到:Win10/UWP开发—使用Cortana语音指令与App的前台交互,这篇我们讲讲如何使用Cortana调用App的后台任务,相比 ...

随机推荐

  1. shell中各种括号的作用详解()、(())、[]、[[]]、{}

    一.小括号,圆括号() 1.单小括号 () ①命令组.括号中的命令将会新开一个子shell顺序执行,所以括号中的变量不能够被脚本余下的部分使用.括号中多个命令之间用分号隔开,最后一个命令可以没有分号, ...

  2. HDFS读数据的过程

  3. chgrp权限命令

    功能说明:变更文件或目录的所属群组. 语 法:chgrp [-cfhRv][--help][--version][所属群组][文件或目录...] 或 chgrp [-cfhRv][--help][-- ...

  4. KMP模板题 Number Sequence HDU1711

    模板...嗯 #include <iostream> #include <cstdio> #include <string.h> #pragma warning ( ...

  5. Luogu P1967 货车运输(Kruskal重构树)

    P1967 货车运输 题面 题目描述 \(A\) 国有 \(n\) 座城市,编号从 \(1\) 到 \(n\) ,城市之间有 \(m\) 条双向道路.每一条道路对车辆都有重量限制,简称限重.现在有 \ ...

  6. 【python之路27】vars()包含的全局变量对象

    213 一..py文件里面包含全局变量 print(vars())输出结果如下: {'__name__': '__main__', '__doc__': None, '__package__': No ...

  7. SSM-5zookeeper在LINUX上自启

    把zookeeper做成服务 1.进入到/etc/rc.d/init.d目录下,新建一个zookeeper脚本 [root@zookeeper ~]# cd /etc/rc.d/init.d/ [ro ...

  8. 前端(jQuery)(1)-- JQuery简介及语法

    1.jQuery库简介 1.1.jQuery: jQuery库可以通过一行简单的标记被添加到网页中 1.2.什么是jQuery: jQuery是一个JavaScript函数库(由于底层封装的问题,不需 ...

  9. 关于 linux 的 limit 的设置

    以下内容参考链接 1.file-max系统最大打开文件描述符数 永久性:在/etc/sysctl.conf中设置 2.nr_open是单个进程可分配的最大文件数. 内核支持的最大file handle ...

  10. id生成器