Просто из глубины моего сознания, но вы можете найти ответ, исследующий что-то вероятное:
РЕДАКТИРОВАТЬ: Добавлена максимальная шкала 1 в ответ на ваш первый комментарий, должно работать ...
var sw:Number = stage.stageWidth,
sh:Number = stage.stageHeight;
if( sw/sh < c.width/c.height ) // (or the opposite depending on the way of scaling)
{
c.width = Math.min(origW,sw);
c.scaleY = c.scaleX = Math.min(1, c.scaleX);
}
else
{
c.height = Math.min(origH,sh);
c.scaleX = c.scaleY = Math.min(1, c.scaleY);
}