Свойство labelRotation AxisRenderer ничего не делает - PullRequest
0 голосов
/ 01 февраля 2012

Несмотря на то, что для свойства labelRotation установлено значение 90 в этой столбчатой ​​диаграмме, метки оси расположены горизонтально. Есть ли что-то еще, что мне нужно сделать?

    <mx:ColumnChart id="myChart" height="100%" width="100%"
                    dataProvider="{myData}"
                    showDataTips="true">
        <mx:horizontalAxis>
            <mx:CategoryAxis id="h1" categoryField="code"/>
        </mx:horizontalAxis>            
        <mx:horizontalAxisRenderers>
            <mx:AxisRenderer axis="{h1}" labelRotation="90" />
        </mx:horizontalAxisRenderers>           
        <mx:series>
            <mx:ColumnSet type="stacked"
                          allowNegativeForStacked="true">
                <mx:series>
                    <mx:ColumnSeries xField="code"
                                     yField="A"
                                     displayName="A"/>
                    <mx:ColumnSeries xField="code"
                                     yField="B"
                                     displayName="B"/>
                    <mx:ColumnSeries xField="code"
                                     yField="C"
                                     displayName="C"/>
                    <mx:ColumnSeries xField="code"
                                     yField="D"
                                     displayName="D"/>
                    <mx:ColumnSeries xField="code"
                                     yField="F"
                                     displayName="F"/>
                </mx:series>
            </mx:ColumnSet>
        </mx:series>
    </mx:ColumnChart>

РЕДАКТИРОВАТЬ: я пытался встроить шрифт, как предложено Эми и fotomut, но он ничего не делал:

<mx:Style>
 @font-face 
 {
    src:url("../assets/fonts/FRABK.ttf");
fontFamily: myFontFamily; 
embedAsCFF: false; 
 }

ColumnChart 
 { 
        fontFamily: myFontFamily; 
        fontSize: 10; 
     } 

</mx:Style>

Ответы [ 2 ]

1 голос
/ 03 февраля 2012

Ключом к работе labelRotation является встраивание шрифтов. Хорошая статья о Flex 4.6 здесь

Простой пример кода: добавить стиль в файл mxml,

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

        @font-face{
            src: local("Arial");
            fontFamily: Arial;
            embedAsCFF: false;
        }

        mx|ColumnChart {
            fontFamily: Arial;
            fontSize: 10;
        }
</fx:Style>

EDIT: Я подтвердил, что это работает для меня, используя Flex 3.5, просто изменив fx:Style на mx:Style

<mx:Style>
    @namespace mx "library://ns.adobe.com/flex/mx";

    @font-face{
        src: local("Arial");
        fontFamily: Arial;
        embedAsCFF: false;
    }

    mx|ColumnChart {
        fontFamily: Arial;
        fontSize: 10;
    }
</mx:Style>

Возможно, вам следует сначала попробовать встроить Arial вот так, чтобы посмотреть, работает ли он?

1 голос
/ 01 февраля 2012

Вставить шрифт, используемый на этом ярлыке Если по какой-то причине вы не можете встроить шрифт, иногда установка blendMode на «layer» будет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...