flash中怎么设置字体大小呢 我看flash里面只有48 72 我要设置字体大小为60活其他的该怎么做呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flash中怎么设置字体大小呢 我看flash里面只有48 72 我要设置字体大小为60活其他的该怎么做呢相关的知识,希望对你有一定的参考价值。

参考技术A 选中文字,在下面属性面板里设置。本回答被提问者采纳 参考技术B flash的英文解释为:n.闪光,闪现,一瞬间,闪现,反射,使迅速传便,vt.使闪光,反射 adj.闪光的,火速的。Flash也是由macromedia公司推出的交互式矢量图和 Web 动画的标准,由Adobe公司收购...

Flash 可以检测丢失的嵌入字体和/或替换为可用字体吗?

【中文标题】Flash 可以检测丢失的嵌入字体和/或替换为可用字体吗?【英文标题】:Can Flash detect missing embedded fonts and/or replace with available fonts? 【发布时间】:2011-05-29 13:11:09 【问题描述】:

编辑过的短版:

Adobe Flash docs 在 TextAreas 上列出属性 embedFonts

一个布尔值,指示是否 fontFamily 中指定的字体是 嵌入字体。必须设置此样式 如果 fontFamily 指的是一个 嵌入字体。否则,嵌入 不使用字体。如果设置了这个样式 为 true 且 fontFamily 不引用 对于嵌入的字体,没有文本 显示。默认值为 false。

关于“如果此样式设置为 true 且 fontFamily 不引用嵌入字体,则不显示任何文本”声明:当这种情况发生时,如何在 ActionScript 中检测?

TL;DR 原始版本:

我有一个 Flash 应用程序,它加载包含嵌入字体的外部 .swf 文件,以便可以在主应用程序中使用这些字体。我们通过对使用自定义字体的任何内容使用以下 ActionScript 代码来完成此操作:

textBoxName.embedFonts = true;

但是,有时请求的字体在加载的外部.swf 文件中不可用——这通常发生在有人对外部.swf 进行更改并且不包括之前存在的所有字体时...

原因并不重要,重要的是它不可避免,而且会发生。当它出现时,任何不可用字体的文本都不会显示。例如:

    主应用程序设置为使用“无数”。它正在加载一个外部 swf 文件,其中包含 Myriad 以及一些其他字体 一段时间后,外部swf 更新为包含一组新字体,Myriad 不再是其中之一。但主应用程序没有更新。 现在,“Myriad”中的主应用程序中的所有文本都不再显示

有没有办法将文本默认为可用的字体,或者检测到该字体不可用并运行一些 ActionScript 代码?

编辑:以防万一,这是我用来从外部 swf 文件加载字体的代码:

// Font Loader:
var loadedFonts = Array();
var fontPakLoadHandler = new Object();

fontPakLoadHandler.percent = 0;

fontPakLoadHandler.onLoadStart = function(target_mc:MovieClip)

    if(!SuspendEvents)
        ExternalInterface.call("fontLoadStart", _root.lcId);


fontPakLoadHandler.onLoadInit = function(target_mc:MovieClip)

    if(!SuspendEvents)
        ExternalInterface.call("fontLoadInit", _root.lcId);


fontPakLoadHandler.onLoadError = function(target_mc:MovieClip, errorCode:String, httpStatus:Number)

    if(!SuspendEvents)
        ExternalInterface.call("fontLoadError", _root.lcId, errorCode, httpStatus);


if(_root.fontPakProgress=='all')

    fontPakLoadHandler.onLoadProgress = function(target_mc:MovieClip, loadedBytes:Number, totalBytes:Number)
    
        fontPakLoadHandler.percent = loadedBytes / totalBytes;
        if(!SuspendEvents)
            ExternalInterface.call("fontLoadProgress", _root.lcId, loadedBytes, totalBytes, fontPakLoadHandler.percent);
    

else

    fontPakLoadHandler.onLoadProgress = function(target_mc:MovieClip, loadedBytes:Number, totalBytes:Number)
    
        var perc = loadedBytes / totalBytes;

        if( (fontPakLoadHandler.percent < .75 && perc >= .75) ||
            (fontPakLoadHandler.percent < .50 && perc >= .50) ||
            (fontPakLoadHandler.percent < .25 && perc >= .25))
        
            if(!SuspendEvents)
                ExternalInterface.call("fontLoadProgress", _root.lcId, loadedBytes, totalBytes, perc);
        

        fontPakLoadHandler.percent = perc;
    


fontPakLoadHandler.onLoadComplete = function(target_mc:MovieClip, httpStatus:Number)

    if(!SuspendEvents)
        ExternalInterface.call("flashReady", _root.lcId, true);
    //ExternalInterface.call("fontLoadComplete", _root.lcId, httpStatus);


var fontPakLoader = new MovieClipLoader();
fontPakLoader.addListener(fontPakLoadHandler);

【问题讨论】:

【参考方案1】:

不幸的是,ActionScript 2 中无法列出所有可用的嵌入字体,就像 ActionScript 3 中的 Font.enumerateFonts() 一样。您只能通过 TextField 获取用户计算机上安装的字体列表.getFontList()。

但是,您可以手动提供可用字体名称的列表(可能在 xml 中)并将其加载到主 SWF 中。然后,您可以在每次使用嵌入字体时将字体名称与此列表进行比较,并替换默认字体,甚至使用替换映射(如果所需字体不可用)。

它不像自动从内容中获取完整列表那样优雅,但它应该可以解决问题,而无需重新编译您的主应用程序。

【讨论】:

糟糕,抱歉,我刚刚看到您在 AS2 中。忘了我说过什么,我会尽力提供有帮助的答案;) 好的,我相应地改变了答案。 谢谢。问题是,有时 TextFields 的文本是通过 html 属性设置的……那么,我是否需要使用 HTML 解析器来提取正在使用的字体?我想我希望有一种更简单的方法……但可能根本不存在 :-) 如果你不能影响文本的结构,那恐怕不行。您可以尝试让所有字体信息都来自样式表并解析 css。那应该没有那么复杂。 或者,如果您知道加载的 SWF 可能使用哪组字体,您也可以为这些字体编写一个列表,并使用 string.indexOf (fontName) 查找每种字体。

以上是关于flash中怎么设置字体大小呢 我看flash里面只有48 72 我要设置字体大小为60活其他的该怎么做呢的主要内容,如果未能解决你的问题,请参考以下文章

Adobe Flash Builder字体大小在哪设置

html网站里面加入其他字体

Flash怎么调节字体大小

如何为FLASH文本设置字体、大小、颜色、段落等属性?还可以为FLASH文本设置哪

flash中舞台外多余的部分怎么让看不见

flash里面,位图动态缩小,如何消除锯齿?