| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2027 人关注过本帖
标题:如果字体不存在,换另外一种字体,怎么写代码?
只看楼主 加入收藏
su0527
Rank: 2
等 级:论坛游民
帖 子:452
专家分:79
注 册:2015-1-10
结帖率:96.03%
收藏
已结贴  问题点数:20 回复次数:5 
如果字体不存在,换另外一种字体,怎么写代码?
比如label1的字体设置为“幼圆”,如果电脑中没有装该字体,则设置label1的字体为“微软雅黑”,如果该字体也没有在该电脑中安装,则设置label1的字体为“宋体”。
请问代码如何写?
搜索更多相关主题的帖子: 字体 存在 代码 微软 安装 
2017-11-24 10:07
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:0 
可以先看看字体信息再作处理。
AFONT(aFontName)                    && 取字体
FOR i = 1 TO ALEN(aFontName)
    AFONT(aFontSize, aFontName[i])  && 取字体的字号
    cMsg = IIF((aFontSize[1] == -1), "可缩放字体","不可缩放字体")+","
    cMsg = cMsg + aFontName[i] +","
    FOR j = 1 TO ALEN(aFontSize)
      cMsg = cMsg + " " + TRANSFORM(aFontSize[j])
    ENDFOR
    ? cMsg
    IF ((i % 20) == 0)
        WAIT
    ENDIF
ENDFOR
? "结束.............."




2017-11-24 10:31
su0527
Rank: 2
等 级:论坛游民
帖 子:452
专家分:79
注 册:2015-1-10
收藏
得分:0 
回复 2楼 吹水佬
接下来如何处理?
只能选用可放缩字体吗?


[此贴子已经被作者于2017-11-25 12:26编辑过]

2017-11-25 12:24
su0527
Rank: 2
等 级:论坛游民
帖 子:452
专家分:79
注 册:2015-1-10
收藏
得分:0 
吹水佬,如下可否:
if afont(s,"幼圆")=.t.       &&返回值为真,说明该字体可用
thisform.label1.fontname="幼圆"
else
if afont(s,"微软雅黑")=.t.
thisform.label1.fontname="微软雅黑"
else
thisform.label1.fontname="宋体"
endif
endif
2017-11-25 12:49
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:10607
专家分:43186
注 册:2014-5-20
收藏
得分:20 
以下是引用su0527在2017-11-25 12:49:31的发言:

吹水佬,如下可否:
if afont(s,"幼圆")=.t.       &&返回值为真,说明该字体可用
thisform.label1.fontname="幼圆"
else
if afont(s,"微软雅黑")=.t.
thisform.label1.fontname="微软雅黑"
else
thisform.label1.fontname="宋体"
endif
endif

可以,也可以这样:
AFONT(arr)
thisform.label1.fontname = ICASE(;
    ASCAN(arr,"幼圆")>0,"幼圆",;
    ASCAN(arr,"微软雅黑")>0,"微软雅黑","宋体")
2017-11-25 15:08
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:610
专家分:1784
注 册:2017-7-16
收藏
得分:0 
我一直用[宋体]
2018-02-18 08:21
快速回复:如果字体不存在,换另外一种字体,怎么写代码?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.034970 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved