1

我正在尝试嵌入一种字体,以便我可以旋转 Spark 按钮组件,但我无法做到这一点。该按钮始终显示为空白,没有文字。

代码如下所示:

<fx:Style>
    @namespace s "library://ns.adobe.com/flex/spark";

    @font-face {
        fontFamily: verdana;
        src: url("VERDANA.TTF");
        embedAsCFF: true;
        fontWeight: normal;
    }

</fx:Style>


<s:Group>
    <s:layout>
        <s:HorizontalLayout />
    </s:layout>

    <s:Button id="back"
              includeInLayout="{data.thisLevel.getParent() != null}"
              label="Back"
              fontFamily="verdana"
              fontWeight="normal"
              height="100%"
              rotation="270" />
</s:Group>

我的研究表明,您需要使用 fontWeight 玩一些游戏才能让 mx:Button 工作,但这应该是 Spark 修复的。(并且弄乱 fontWeight 并没有做任何事情。)当我将按钮变成标签时,它的行为符合我的预期,所以我显然正确地嵌入了字体——按钮只是看不到它。

我在这里做错了什么?

4

1 回答 1

2

你做得很好。你的代码对我来说很棒。我添加了第二个按钮让你看到效果。

在此处输入图像描述

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
           xmlns:s="library://ns.adobe.com/flex/spark" 
           xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">


<fx:Style>
    @namespace s "library://ns.adobe.com/flex/spark";

    @font-face {
        fontFamily: verdana;
        src: url("assets/fonts/verdana.ttf");
        embedAsCFF: true;
        fontWeight: normal;
    }

    @font-face {
        fontFamily: snap;
        src: url("assets/fonts/snap.ttf");
        embedAsCFF: true;
        fontWeight: normal;
    }

</fx:Style>

<s:Group x="100" y="100">
    <s:layout>
        <s:HorizontalLayout />
    </s:layout>

    <s:Button id="back"
              includeInLayout="true"
              label="Back"
              fontFamily="verdana"
              fontWeight="normal"
              height="100%"
              rotation="270" />

    <s:Button id="back2"
              includeInLayout="true"
              label="Back"
              fontFamily="snap"
              fontWeight="normal"
              height="100%"
              rotation="270" />
</s:Group>
</s:Application>
于 2013-02-25T14:57:47.177 回答