Создать образ в AS3 - PullRequest
       2

Создать образ в AS3

0 голосов
/ 18 марта 2011

Можно ли создать во Flash AS3 изображение, содержащее специфику bagroundcolor и текст в формате som, введенный пользователем?А затем использовать этот образ во время выполнения?

// nicke

Ответы [ 2 ]

1 голос
/ 18 марта 2011

Вот немного псевдокода, который может помочь вам нарисовать графику и создать ее растровый объект.

w = 400;
h = 400;

var shape:Shape = new Shape();
shape.graphics.beginFill( 0xFF0000, 1 );
shape.graphics.drawRect( 0, 0, w, h );
shape.graphics.endFill();

var field:TextField = new TextField();
field.text = someUserInput;
shape.addChild( field );

var bitmap:Bitmap = new Bitmap();
var bitmapData:BitmapData = new BitmapData( w, h );
bitmapData.draw( shape );
bitmap.bitmapData = bitmapData;

addChild( bitmap );

Здесь вы можете использовать основные библиотеки Adobe для создания реального JPEG-файла.или png файл:

var jpgEncoder:JPGEncoder = new JPGEncoder( quality );
var jpgStream:ByteArray = jpgEncoder.encode( bitmapData );
0 голосов
/ 18 марта 2011

Sure:

function createTextBox
(
 width : Number,
 height : Number, 
 bgColor : uint, 
 text : String, 
 texFormat : TextFormat ) : Sprite
{
 var sprite : Sprite = new Sprite();
 var shape : Shape = new Shape();
 var textField : TextField = new TextField();

 //background
 shape.graphics.beginFill( bgColor );
 shape.graphics.drawRect( 0, 0, width, height );
 sprite.addChild( shape );

 //textfield
 textfield.width = width;
 textfield.height = height;
 textfield.multiline = true;
 textfield.wordWrap = true;

 //up to you if it serves your needs
 textfield.embedFonts = true;
 textField.selectable = false;

 textField.defaultTextFormat = textFormat;
 sprite.addChild( textField );

 return sprite;
}

var format : TextFormat = new TextFormat();
format.color = 0xFF0000;
format.size = 12;

var myText : String = "A woman is just a woman but a good cigar is a smoke!"

var sprite : Sprite = createTextBox( 200, 200, 0x999999, myText, format );
addChild( sprite );

//if you want, you can covert this to a bitmap:

var bitmapData : BitmapData = new BitmapData( 200, 200, false );
bitmapData.draw( sprite );

var bitmap : Bitmap = new Bitmap( bitmapData );
bitmap.x = 200;
addChild( bitmap );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...