The following example shows how you can set the font thickness on a Flex Label control by setting the fontThickness and fontAntiAliasType styles.
Full code after the jump.
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/08/21/setting-the-font-thickness-for-a-label-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Style>
@font-face {
src: local("Base 02");
fontFamily: Base02Embedded;
}
</mx:Style>
<mx:ApplicationControlBar dock="true">
<mx:Form styleName="plain">
<mx:FormItem label="fontThickness:" direction="horizontal">
<mx:HSlider id="slider"
minimum="-200"
maximum="200"
value="0"
snapInterval="10"
tickInterval="20"
liveDragging="true" />
<mx:Label text="{slider.value}" />
</mx:FormItem>
</mx:Form>
</mx:ApplicationControlBar>
<mx:Label id="lbl"
text="The quick brown fox jumped over the lazy dog."
fontFamily="Base02Embedded"
fontSize="16"
fontAntiAliasType="advanced"
fontThickness="{slider.value}" />
</mx:Application>
View source is enabled in the following example.
You can also set the fontThickness style using an external .CSS file or <mx:Style /> block, as seen in the following example:
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/08/21/setting-the-font-thickness-for-a-label-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Style>
@font-face {
src: local("Base 02");
fontFamily: Base02Embedded;
}
Label {
fontAntiAliasType: advanced;
fontFamily: Base02Embedded;
fontSize: 16;
fontThickness: -200;
}
</mx:Style>
<mx:Label id="lbl"
text="The quick brown fox jumped over the lazy dog." />
</mx:Application>
Or, you can set the fontThickness style using ActionScript, as seen in the following example:
<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2008/08/21/setting-the-font-thickness-for-a-label-control-in-flex/ -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Style>
@font-face {
src: local("Base 02");
fontFamily: Base02Embedded;
}
</mx:Style>
<mx:Script>
<![CDATA[
import mx.events.SliderEvent;
private function slider_change(evt:SliderEvent):void {
lbl.setStyle("fontThickness", evt.value);
}
]]>
</mx:Script>
<mx:ApplicationControlBar dock="true">
<mx:Form styleName="plain">
<mx:FormItem label="fontThickness:" direction="horizontal">
<mx:HSlider id="slider"
minimum="-200"
maximum="200"
value="0"
snapInterval="10"
tickInterval="20"
liveDragging="true"
change="slider_change(event);" />
<mx:Label text="{slider.value}" />
</mx:FormItem>
</mx:Form>
</mx:ApplicationControlBar>
<mx:Label id="lbl"
text="The quick brown fox jumped over the lazy dog."
fontFamily="Base02Embedded"
fontSize="16"
fontAntiAliasType="advanced" />
</mx:Application>
Base 02 font by http://www.stereo-type.net/.



0 Responses to “Setting the font thickness for a Label control in Flex”
Leave a Reply