在WPF(core版本)中引用外部字体不可用问题说明
这几天使用WPF写软件,想引用外部字体,于是下载了字体文件:

然后在App.xaml中添加了如下代码:
<FontFamily x:Key="Digital-7 Mono">
pack://application:,,,/IVFTempMonitor;component/Fonts/Digital7Mono-B1g5.ttf#Digital-7 Mono
</FontFamily>
字体存放目录:

在MainWindow.xaml中使用上面定义的字体,代码如下:
<Border Grid.Row="1"Grid.Column="0"Margin="3"Background="{StaticResource BootstrapCyan}">
<TextBlock
HorizontalAlignment="Center"
VerticalAlignment="Center"
FontFamily="{StaticResource 'Digital-7 Mono'}"
FontSize="40"Foreground="White"
Text="{Binding One}" />
</Border>
在运行的时候,发现字体设置不起作用,运行结果如下:
红框中的内容全部使用了上面定义的字体

本来想,不起作用就不起作用吧,可以让用户自己安装一下需要的字体。将程序交给同事时,发现在win7上不能运行,由于是远程,没有进行查看具体原因,就将代码改成了使用.net framework版本的程序。创建了一个项目,把core中的程序文件拷贝到新项目中,并运行了程序,结果很是吃惊,字体引用竟然起作用了。
下图为使用.net framework版本运行程序的截图:

具体是什么原因导致的,目前还不是很清楚,已经在github上面提交了Issues,想要了解具体信息请查阅:
in App.xmal add FontFamily can't usable
在微信群发了一条消息后,得到群友:沙漠尽头的狼(dotnet9.com) 的帮助,经其调试后,发现是可以的。
根据其发给我的源码,我在本地也进行了调试,发现是对字体属性的设置问题导致的。

正确的设置如上图所示,生成操作为:资源
而我设置下面的内容:复制到输出目录:如果较新则复制
在此感谢:沙漠尽头的狼(dotnet9.com)
在WPF(core版本)中引用外部字体不可用问题说明的更多相关文章
- Java引用外部字体(路径引用)的一些坑
一 原因 后端负责字体...哎,我们公司的前端真的任性啊... 然后,一路踩了jvm关于字体的坑,重点是,java的报错很随意,甚至不报错,建议直接看最后面. 二 代码 正常要windows装一次字体 ...
- Android 引用外部字体
在Android中,加载外部字体是非常容易的! 步骤如下: 1. 创建新的Android工程: 2. 在工程下的assets文件夹下新建名字为fonts的文件夹(名字可以任意选取),把所有的外部字体文 ...
- HTML中引用外部JS文件失效原因
今天在练习中碰到“引用外部的一个js文件但是却失效”的情况,实在不懂,百度后才知是引用的位置不对,错误的代码如下: <head> <meta charset="UTF-8& ...
- .net core项目中引用.net framework封装的dll库
https://blog.csdn.net/sharphou/article/details/80746551 A----------如何安装IIS [Server Hosting]------- ...
- python函数定义中引用外部变量的一个问题
如果在函数定义的默认值中引用了一个外部变量,如下所示 x = 3 def func(a = x): print(a, x) 那么a的默认值就会是3, 但是print语句中的x会是调用时的x值 lamb ...
- Spring中配置文件中引用外部文件
src\dayday\conn.java package dayday;import java.sql.Connection;import java.sql.DriverManager;import ...
- vue2项目中引用外部js文件
vue2项目目录如下(utils文件夹是自己手工建的,然后在utils里新建js文件): 使用import导入文件时,注意路径,路径不对会报错: 导入之后使用外部js函数时,直接写导入时的名字加小括号 ...
- 关于在c#中引用外部dll文件,在页面中找不到命名空间
最近在项目中碰到这样的问题,经过搜索,发现是vs2010的版本不对,VS默认的版本是.NET Framework 4 Client Profile,需要将他更改为.NET Framework 4 版本 ...
- 为什么在匿名内部类中引用外部对象要加final修饰符
当所在的方法的形参需要被内部类里面使用时,该形参必须为final. 为什么必须要为final呢? 首先我们知道在内部类编译成功后,它会产生一个class文件,该class文件与外部类并不是同一clas ...
随机推荐
- 数据结构与算法——认识O(NlogN)的排序(1)
归并排序 1) 整体就是一个简单递归,左边排好序.右边排好序.让其整体有序 2) 让其整体有序的过程里用了外排序方法 3) 利用master公式来求解时间复杂度 4) 归并排序的实质 时间复杂度0(N ...
- i春秋web作业2.24
Web安全工程师(入门班) [全国线上入门班53期]课后作业 2020-2-24 DorinXL 分别尝试安装一个Windows和Linux操作系统 想要在虚拟机上装系统,首先需要下载对应的镜 ...
- 电脑C盘空间不足
电脑C盘空间不足,又不知道哪些文件可以删,可以下载下面的批处理文件 @echo off echo 正在清除系统垃圾文件,请稍等...... del /f /s /q %systemdrive%\*.t ...
- day10-time模块
import time print(time.time()) #时间戳1553070877.0166008 print(time.strftime('%Y-%m-%d %H %M %S')) #201 ...
- 直击LG曲面OLED首发现场,高端品质更出众
简直是太棒了,我可以去看LG曲面OLED电视新品发布会了.这可是LG向中国首次推出的曲面OLED电视.在网上我就已经看到其实曲面OLED电视已经在韩国.美国还有欧洲都上市了,听说现在反响还挺不错.真没 ...
- linux上部署jenkins
http://www.pianshen.com/article/1133171043/相关jenkins链接 下载jenkins的war包:https://blog.csdn.net/Aaron_Zh ...
- VBA引用管理工具(可用于32、64位Office,Win7 Win10均可)
VBAReferenceManager安装和使用方法,操作请看动态图: 下载地址: VBAReferenceManager.zip
- [LC] 121. Best Time to Buy and Sell Stock
Say you have an array for which the ith element is the price of a given stock on day i. If you were ...
- python语法基础-常用模块-长期维护
############### 常用模块 ################ # 常用模块: # 1,collections模块 # 2,时间模块,time模块,datatime模块 # ...
- 3dmax2020卸载/安装失败/如何彻底卸载清除干净3dmax2020注册表和文件的方法
3dmax2020提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装3dmax2020失败提示3dmax2020安装未完成,某些产品无法安装,也有时候想重新安装3 ...