在Openlaszlo的SWF运行时中旋转制表符组件时文本消失

时间:2012-11-08 16:21:36

标签: text tabs rotation openlaszlo lzx

为什么当我应用旋转标签时,标签消失了?有没有办法让标签保持在相对位置,所以它与标签一起旋转?

代码:

<tabs name="dentes" height="200"  width="300" x="${this.width}" y="${this.height}" rotation="90">
    <tabpane name="coroa" text="Coroa" bgcolor="blue" width="100%" height="100%"> 
        <text>Nome:</text>
    </tabpane>
    <tabpane name="raiz" text="Raiz" bgcolor="red" width="100%" height="100%"> 
        <text>Nome:</text>
    </tabpane>
    <tabpane name="canal" text="Canal" bgcolor="green" width="100%" height="100%"> 
        <text>Nome:</text>
    </tabpane>
</tabs>

1 个答案:

答案 0 :(得分:1)

使用客户端字体时,这是Flash / SWF运行时的技术限制。它也在文档中提到:

  

OpenLaszlo Developers Guide, Chapter 21, Text Views:在   特别是,您应该了解客户端字体之间的区别   和编译为SWF的应用程序中的嵌入字体。 (应用程序   编译为DHTML不能使用嵌入字体)。因为他们没有   总是表现得一样(例如客户字体不能   由于Flash Player的限制而旋转或改变不透明度

使用<font>标记将TTF字体嵌入到您的应用程序中。如果为文本选择该字体,则rotatoin将按预期工作,例如:

<canvas width="100%" height="250">

    <!-- ATTENTION: Please download the KentucyFriedChickendFont.ttf file using
         this URL and put it in the same folder as this LZX file.
         http://svn.openlaszlo.org/openlaszlo/trunk/test/resources/ttf/KentuckyFriedChickenFont.ttf
    -->

    <font name="ChickenNoCFF" src="KentuckyFriedChickenFont.ttf" embedascff="false" />
    <font name="ChickenCFF" src="KentuckyFriedChickenFont.ttf" embedascff="true" />

    <inputtext x="100" 
               rotation="10"
               font="ChickenNoCFF" fontsize="32" 
               hasdirectionallayout="false"
               resize="true">
    Embedded font (no CFF)
    </inputtext>

    <!-- Text elements using @hasdirectionallayout="true" need to set
         @embedascff="true" for the SWF10+ runtimes -->
    <inputtext x="100" y="100"
               rotation="10" 
               font="ChickenCFF" fontsize="32" 
               hasdirectionallayout="true">
    Embedded font (embedded as CFF)
    </inputtext>

</canvas>

您必须将TTF字体嵌入到您的应用程序中,然后您可以自由旋转任何标准文本组件。

如果在SWF应用程序中使用文本组件的hasdirectionallayout属性,则在嵌入自定义字体时必须使用embedascff="true"属性。

以下是此示例SWF10应用程序的屏幕截图,在5.0(主干)上进行了测试。

enter image description here