[C#]从外部文件引入字体文件并显示到控件

本文讲述了在C#中尝试从外部文件加载字体并应用到程序控件时遇到的问题,包括字体加载成功但无法正常显示,以及特定字体不支持常规样式等,最终作者放弃了使用该字体。

看来我对字体方面的了解还是不够多啊。

从网上找了段代码,本以为拷里头就完事呢,结果发现到加载字体文件都没问题,这些我在VB6时代都干过。

但是当我打算把该字体应用到程序时,却自动变回了系统默认字体。

这表示我没有给予正确的参数。好吧我承认我不知道那应该是什么!

………………
好吧,从网上找来的代码永远是那么的不靠谱!

经我仔细的思索,我认为他把从文件加载的字体名称代入到建立字体对象的参数中,不是一个正确的做法。

因为程序很可能尝试从系统安装的字体中寻找它,当然是找不到的,从而改用默认字体替代。

于是,我重新定义了需要的[FontFamily]对象,使用从外部字体文件引入时的对象为参数,而不是名称的字符串,这次没问题了,字体终于变了。

最后我把异常扔出也改了,否则我可能早就看到是哪里出了错误!!!

	//**********************************************
	// 添加命名空间引用
	//**********************************************
	using System.Drawing.Text;        


	//**********************************************
        //自定义模块:从外部字体文件加载字体样式到程序。
        //**********************************************
        public void Setfont()
                {
                    string AppPath = Application.StartupPath;
                    try
                    {
                        //从外部文件加载字体文件
                        PrivateFontCollection
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值