`
lixinye0123
  • 浏览: 333397 次
  • 性别: Icon_minigender_1
  • 来自: 温州
社区版块
存档分类
最新评论

检测用户系统中安装的字体

阅读更多
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2007/09/10/finding-out-which-fonts-are-installed-on-a-users-system/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout
="vertical"
        verticalAlign
="middle"
        backgroundColor
="white"
        creationComplete
="init()">

    
<mx:Script>
        
<![CDATA[
            import flash.text.Font;

            private function init():void {
                arr = Font.enumerateFonts(true);
                arr.sortOn("fontName", Array.CASEINSENSITIVE);
            }
        
]]>
    
</mx:Script>

    
<mx:Array id="arr" />
    
<mx:String id="str">The quick brown fox jumped over the lazy dog.</mx:String>

    
<mx:ApplicationControlBar dock="true">
        
<mx:Label text="String:" />
        
<mx:TextInput id="textInput" text="{str}" />

        
<mx:Spacer width="100%" />

        
<mx:Label text="Number of installed fonts: {arr.length}" />
    
</mx:ApplicationControlBar>

    
<mx:DataGrid id="dataGrid" dataProvider="{arr}">
        
<mx:columns>
            
<mx:DataGridColumn dataField="fontName"
                    width
="200"
                    itemRenderer
="mx.controls.Label" />
            
<mx:DataGridColumn dataField="fontStyle" />
            
<mx:DataGridColumn dataField="fontType" />
        
</mx:columns>
    
</mx:DataGrid>

    
<mx:Label id="lbl"
            text
="{textInput.text}"
            width
="{dataGrid.width}"
            height
="32"
            fontFamily
="{dataGrid.selectedItem.fontName}"
            fontSize
="16" />

</mx:Application>
 

效果:


如果修改上面的例子,并使用下面的代码嵌入一个字体,那么在表格中也会显示出来“Base02"字体:


<mx:Style>
    @font-face{
        src: url("./fonts/base02.ttf");
        fontFamily: "Base02";
    }
</mx:Style>

如果把 enumerateFonts()方法的参数改为flase,那么只会列举出嵌入字体:

<mx:Script>
    
<![CDATA[
        import flash.text.Font;

        private function init():void {
            arr = Font.enumerateFonts(false);
            arr.sortOn("fontName", Array.CASEINSENSITIVE);
        }
    
]]>
</mx:Script>

分享到:
评论

相关推荐

    js获取电脑中所安装的所有字体

    这主要涉及到Web浏览器的字体检测技术,它可以帮助开发者创建自适应的网页设计,根据用户的系统字体库提供最佳的视觉体验。以下是对"js获取电脑中所安装的所有字体"这一主题的详细解释。 首先,JavaScript本身并不...

    C++字体安装与卸载

    在这个特定的项目中,"C++字体安装与卸载"是通过MFC对话框来实现的用户交互,允许用户方便地管理他们的系统字体。 首先,我们需要理解Windows操作系统中的字体是如何工作的。Windows使用TrueType字体格式,这是一种...

    XP系统字体修复工具

    XP系统字体修复工具是一款专为Windows XP操作系统设计的软件,旨在解决用户在使用过程中遇到的字体显示异常问题。XP系统,作为微软推出的一款经典操作系统,虽然已经停止了官方支持,但仍有大量用户在使用。在长时间...

    Office 2010安装报错1907,没有足够权限注册字体.docx

    - 通过命令提示符中的`sfc /scannow`命令可以检测并修复损坏的系统文件。 - 如果发现字体文件损坏,可以从正常工作的相同系统版本计算机上复制**%windir%\Fonts**文件夹下的相应字体文件,并替换到出现问题的...

    一键修改系统字体

    描述中提到的“小软件”可能是指一个轻量级的应用程序,比如"Microangelo On Displaycn",它简化了字体修改的过程,让用户无需深入理解复杂的系统设置,也能轻松更改系统字体。"Microangelo On Displaycn"很可能是一...

    NexusFont字体管理器

    用户可以根据个人喜好或项目需求创建不同的字体集合,将相似或特定用途的字体归类,使得在众多字体中寻找合适的风格变得轻而易举。同时,软件支持搜索功能,用户可以通过关键词快速定位到目标字体。 除此之外,...

    页面应用系统皮肤并且可以获取当前系统默认字体的颜色

    - **可访问性**:考虑用户可能的视觉障碍,使用`getComputedStyle`获取系统字体颜色并调整文本颜色,以满足WCAG(Web Content Accessibility Guidelines)标准。 - **兼容性**:由于不是所有浏览器都支持获取系统...

    易语言API判断字体是否存在

    首先,我们要了解API函数`IsWinFont`,它是Windows API中用于检测给定的字体是否为Windows支持的字体。这个函数接受一个指向字体名称的指针作为参数,并返回一个布尔值,如果字体存在,返回`TRUE`,否则返回`FALSE`...

    win7 缺少的常见字体

    在安装过程中,Windows 7会自动检测字体的合法性,并将其添加到系统的字体库中,供所有应用程序使用。需要注意的是,为了保持系统稳定性,不要随意从非官方渠道下载字体,以免引入病毒或恶意软件。 对于一些设计...

    字体管家可以解决字体无法添加的情况

    6. **安全无忧**:在安装字体时,字体管家会检测字体文件的完整性和安全性,防止恶意软件通过字体文件入侵系统,确保用户的电脑安全。 7. **字体应用**:除了基本的管理功能,字体管家还支持批量替换文档中的字体,...

    CAD字体替代软件

    然而,CAD文件中的字体有时会成为问题,特别是在不同设备或用户之间共享文件时,如果接收方的系统中没有使用到的特定字体,打开文件时就会出现找不到字体的提示,导致文件显示不全或乱码。 "CAD字体替代软件"就是...

    Ubuntu WPS 字体修复

    在WPS中,依次点击“工具” &gt; “选项” &gt; “高级”,在“文档默认设置”部分,找到“文字”选项,确保勾选“使用系统字体”和“自动检测并替换缺失字体”。这样,WPS将在发现缺失字体时尝试使用系统中的其他字体进行...

    易语言源码易语言字体安装器源码.rar

    4. **系统调用**:为了实现字体的安装,易语言源码可能会调用操作系统提供的API函数,比如Windows API,进行字体注册或更新系统字体库。 5. **错误处理**:在程序中,错误处理是必不可少的部分。易语言源码中会包含...

    AUTOCAD字体修复插件

    2. 替换匹配:一旦检测到缺失字体,插件将从内置的字体库中寻找最接近的替代品,确保文字样式尽可能保持一致。 3. 用户自定义:用户可以预先设定某些字体的替换规则,以便在特定情况下使用指定的替代字体。 4. 批量...

    检验Pdfsharp.dll 支持的语言及对应的字体

    3. **异常处理**:当检测到字体不支持某语言时,可能有处理机制来决定如何优雅地处理这种情况,比如替换为系统默认的多语言字体,或者提示用户安装缺失的字体。 4. **测试用例**:为了确保修改后的功能有效,通常会...

    自动替换cad缺失字体

    在CAD(计算机辅助设计)领域,用户经常遇到一个棘手的问题——打开图纸时发现某些文字显示为方框或问号,这是因为CAD文件中引用的字体在本地计算机上不存在。为了解决这一问题,我们需要理解“自动替换CAD缺失字体...

    downfonts_en-windows系统字体管理工具.zip

    这时,Downfonts En作为一款专业的Windows系统字体管理工具,应运而生,为用户提供了便捷的解决方案。 Downfonts En,全称为"Downfonts 字体大师",是一款专为Windows用户设计的字体预览、管理、备份和修复工具。它...

    fastreport3.15 导出到 pdf 支持任意简体中文字体源码

    1. **字体检测**:源码可能包含一段用于遍历系统字体文件的代码,通过比较字体名称和字符集来识别是否为简体中文字体。 2. **字体替换**:当检测到报表中的中文字符未使用支持的字体时,源码会触发字体替换逻辑,...

    超级实用字体管理器,满足所有设计需求

    用户只需通过软件界面,一键即可完成字体的安装,而且会自动更新到系统字体列表中。同样,如果想要卸载某个字体,只需选中并点击卸载,软件会安全地移除字体,避免留下无用的文件。 最后,作为一款便携型软件,...

    Linux字体配置要略

    通过以上步骤,我们可以确保字体在Linux系统中的配置既符合文档的原始设计意图,又能适应不同的应用场景,从而提高用户体验。 总之,在Linux中配置字体需要理解字体的基本概念、配置逻辑以及具体的实践步骤。遵循...

Global site tag (gtag.js) - Google Analytics