Я пишу растеризатор MovieClip, который растеризует все кадры в указанном мувиклипе.Вот код для растеризации:
for ( var i:int = start; i <= end; i++ )
{
//goto the next frame
clip.gotoAndStop( i );</p>
<p>//get the bounds
bounds = clip.getBounds(clip);</p>
<p>//create a new bitmapdata container
bitmapData = new BitmapData(
transformer.width == -1 ? bounds.width : transformer.width,
transformer.height == -1 ? bounds.height : transformer.height,
transformer.transparent,
transformer.color
);</p>
<p>if (transformer.matrix.tx == 0 && transformer.matrix.ty == 0) transformer.translateToZero( bounds );</p>
<p>//draw the bitmap data with the transformers
bitmapData.draw(
this._source,
transformer.matrix,
transformer.colorTransform,
transformer.blendMode,
transformer.clipRect, //new Rectangle(0, 0, bounds.width, bounds.height),
transformer.smoothing
);</p>
<p>//push the data on the array
frames.push( bitmapData );
}
Теперь результат другой - http://i42.tinypic.com/lfv52.jpg - черный - это растеризованная версия (я использовал преобразование цвета на нем, чтобыпроверить это: P).Обратите внимание на голову и левый ботинок.Кто-нибудь знает в чем проблема?Я видел людей, добавляющих «лишние» пиксели к своему граничному блоку в конструкторе BitmapData, но это правильное решение.
У кого-нибудь есть идея, как красиво вписаться в символ?