![]() |
|
||||||||||
|
|||||
|
[+1.10 22.01.07]
Регистрация: May 2006
Сообщений: 59
|
В разных компонентах - по разному.
вот код public static function drawText(oParent:UIComponent,
nX:Number = 0,
nY:Number = 0,
nWidth:Number = 30,
nHeight:Number = 30,
sText:String = "DD",
uColor:uint = 0x000000,
// center, left, right
sHAlign:String = "center",
// middle, top, bottom
sVAlign:String = "middle",
sFont:String = "helvnewblackcond"):void {
// Test label, for metrics measure
var oLabel:Label = new Label();
oLabel.text = sText;
oLabel.setStyle("fontFamily", sFont);
oLabel.setStyle("fontSize", 100);
oParent.addChild(oLabel);
oLabel.validateNow();
var oTlm:TextLineMetrics = oLabel.measureText(sText);
// Get metrics without top and bottom font margin
var nMult:Number = Math.min( nWidth / oTlm.width,
nHeight / oTlm.height );
var oLabel2:Label = new Label();
oLabel2.truncateToFit = false;
oLabel2.text = sText;
oLabel2.setStyle("color", uColor );
oLabel2.setStyle("fontFamily",sFont);
oLabel2.setStyle("fontSize", 100);
oParent.addChild( oLabel2 );
oLabel2.scaleX = nMult;
oLabel2.scaleY = nMult;
switch ( sHAlign ) {
case "center":
oLabel2.x = nX + ( nWidth / 2 ) -
( ( ( oTlm.width )* nMult ) / 2 ) - ( oTlm.x * nMult );
break;
case "left":
oLabel2.x = nX;
break;
case "right":
oLabel2.x = nX + nWidth - ( oTlm.width * nMult );
break;
default:
break;
};
switch ( sVAlign ) {
case "middle":
oLabel2.y = nY + ( nHeight / 2 ) -
( ( ( oTlm.height ) * nMult) / 2 );
break;
case "top":
oLabel2.y = nY;
break;
case "bottom":
oLabel2.y = nY + nHeight - ( ( oTlm.height ) * nMult);
break;
default:
break;
};
// Remove source label
oParent.removeChild( oLabel );
oLabel = null;
}
слева в mx:List шрифты почему то отрисовываются по умолчанию справа на Canvas все прорисовывается как надо что бы это могло быть и как лечится ??? |
![]() |
![]() |
Часовой пояс GMT +4, время: 12:03. |
|
|
« Предыдущая тема | Следующая тема » |
|
|