WPF 加载外部字体
例如将字体放入d:/Fonts 文件夹。然后就可以通过类似 btn.FontFamily = new FontFamily("file:///d:/Fonts/#Ashley");的形式使用。
获取字体文件的字体名称:
string fontFilePath = "d:\\Fonts\\ygyxsziti2.0.ttf";
GlyphTypeface glyphTypeface = new GlyphTypeface(new Uri(fontFilePath,UriKind.RelativeOrAbsolute));
String fontFamily = glyphTypeface.Win32FamilyNames[new System.Globalization.CultureInfo("en-us")];
String fontFace = glyphTypeface.Win32FaceNames[new System.Globalization.CultureInfo("en-us")];
Console.WriteLine("Font: " + fontFamily + " " + fontFace);
完整代码:
string fontFilePath = "d:\\Fonts\\ygyxsziti2.0.ttf";
GlyphTypeface glyphTypeface = new GlyphTypeface(new Uri(fontFilePath,UriKind.RelativeOrAbsolute));
String fontFamily = glyphTypeface.Win32FamilyNames[new System.Globalization.CultureInfo("en-us")];
String fontFace = glyphTypeface.Win32FaceNames[new System.Globalization.CultureInfo("en-us")];
Console.WriteLine("Font: " + fontFamily + " " + fontFace);
string fontFolerPath=System.IO.Path.GetDirectoryName(fontFilePath);
string fontOK = "file:///" + fontFolerPath.Replace("\\\\", "/").Replace("\\", "/") + "/#" + fontFamily;
btnFontColor.FontFamily = new FontFamily(fontOK);
//btnFontColor.FontFamily= new FontFamily("file:///d:/Fonts/#叶根友毛笔行书2.0版");
另外获取字体名称的方法1:
using System.Drawing; using System.Drawing.Text;
您需要将字体添加到私有集合( PrivateFontCollection ),然后请求FontFamily实例并获取其Name属性。
像这样:
PrivateFontCollection fontCol = new PrivateFontCollection(); fontCol.AddFontFile(@"PATH TO FONT"); Console.WriteLine(fontCol.Families[0].Name);
另外获取字体名称的方法2:
foreach (FontFamily fontFamily in Fonts.GetFontFamilies("file:///D:/MyFonts/")) { string name = fontFamily .ToString().Split('#')[fontFamily .ToString().Split('#').Count() - 1]; }
WPF 加载外部字体的更多相关文章
- 应用程序加载外部字体文件(使用AddFontResource API函数指定字体)
/* MSDN: Any application that adds or removes fonts from the system font table should notify other w ...
- WPF加载HTML、WPF与JavaScript交互
目录 一.WebBrowser加载远程网页 二.WebBrowser加载本地网页,注:不可以加载本地样式CSS和脚本JS文件 三.WebBrowser隐藏网页的JavaScript错误 四.网页屏蔽鼠 ...
- 【Win 10 应用开发】加载外部的 srt 字幕
据说系统内置的多媒体功能支持 srt. ssa 等字幕,老周测试过几种格式的字幕均能加载. SRT 字幕是最简单的字幕结构,甚至你用记事本都能做出来,就是分为几行来写. 第一行是字幕的编号,应该是从1 ...
- 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件
[源码下载] 背水一战 Windows 10 (11) - 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件 作者 ...
- JBoss 系列十四:JBoss7/WildFly如何加载外部的文件或properties文件
http://www.tuicool.com/articles/M7ZR3y 原文 http://blog.csdn.net/kylinsoong/article/details/12623997 主 ...
- Error #2044: 未处理的 IOErrorEvent:。 text=Error #2035: 找不到 URL这是flash加载外部资源时有时会遇到的问题,对于此问题解决如下
导致这个错误的主要原因是未添加IOErrorEvent事件监听,或者添加了监听,但是加载时使用了unload() 参考资料: http://blog.csdn.net/chjh0540237/arti ...
- FusionCharts简单教程(六)------加载外部Logo
一.加载外部文件Logo 在使用FusionCharts时,我们可能需要在加载图像的时候需要在图表中显示标识.图片等等.这里我们可以使用logoURL属性来实现.如: <chart ...
- 资源: CustomResource, ResourceDictionary, 加载外部的 ResourceDictionary 文件
CustomResource ResourceDictionary 加载外部的 ResourceDictionary 文件 示例1.演示“CustomResource”相关知识点Resource/Cu ...
- 使用js加载器动态加载外部Javascript文件
原文:http://www.cnblogs.com/xdp-gacl/p/3927417.html 今天在网上找到了一个可以动态加载js文件的js加载器,具体代码如下: JsLoader.js var ...
- 转载:Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式
Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关 ...
随机推荐
- spool参数详解
SQL*PLUS维护系统变量,也称SET变量,利用它可为SQL*PLUS交互建立一个特殊的环境,如:设置NUMBER数据的显示宽度;设置每页的行数;设置列的宽度等.可用SET命令改变这些系统变量,也可 ...
- Dash 2.18.2版本更新:模式匹配回调性能大提升
本文示例代码已上传至我的Github仓库:https://github.com/CNFeffery/dash-master Gitee同步仓库地址:https://gitee.com/cnfeffer ...
- 低功耗4G模组:Air780EP开发板RC522实例
本文讲解合宙Air780EP开发板RC522实例,文末[阅读原文]获取最新资料. 本文档适用于Air780EP开发板 关联文档和使用工具 LuatOS-Soc固件获取 https://gitee. ...
- 扩展 Tomcat Web 服务器的功能
把服务器提升到新的高度 本教程是所有 Web 服务器或应用服务器管理员的必读指南.尽管 Apache Tomcat 的实现与其他 Web 服务器略有不同,但是本教程为许多高级管理任务提供了一种符合逻辑 ...
- Java虚拟机类加载机制浅谈
Java语言是一种编译后再经过解释器执行的过程, 解释器主要就是如何处理解释Class文件的二进制字节流.JVM主要包含三大核心部分:运行时数据区,类加载器和执行引擎. 虚拟机将描述类的数据从Clas ...
- Impala源代码分析(3)-backend查询执行过程
4 Replies 这篇文章主要介绍impala-backend是怎么执行一个SQL Query的. 在Impala中SQL Query的入口函数是: void ImpalaServer::query ...
- 成为JavaGC专家Part II — 如何监控Java垃圾回收机制
本文是成为Java GC专家系列文章的第二篇.在第一篇<深入浅出Java垃圾回收机制>中我们学习了不同GC算法的执行过程,GC是如何工作的,什么是新生代和老年代,你应该了解的JDK7中的5 ...
- VSCode关于编译scss的插件
先安装两个插件,live server和 live sass compiler两个插件 然后将下面的代码复制到设置(文件---首选项----设置----打开设置json)中 "liveSas ...
- gitlab安装与基本使用
这里会使用一个前端项目自动化部署的方式来进行了解 Node 安装项目依赖.打包都需要 Nginx web 项目部署必须「正向代理.方向代理.负载均衡等等」. GitLab 也会用到 Nginx(默认自 ...
- 一种小资源情况下RDS数据实时同步StarRocks方案
一.背景 目前需要将阿里云RDS数据库的数据同步到自建的StarRocks集群.之前使用DolphinScheduler通过定时调度Datax任务,将数据同步到StarRocks集群中,但是随着业务的 ...