Pergunta

Eu tenho uma tela que é uma área de desenho. Esta tela pode ser rolada horizontal e verticalmente.

Estou tentando fazer uma captura de tela do tela inteira, isso inclui peças visíveis e roladas.

var bmd:BitmapData = new BitmapData(board.width, board.height, false, 0xffffff);
bmd.draw(board);

Isso só me mostraria a parte visível da tela e suas barras de rolagem:/

Como você resolveria esse problema? Usando Board.Width + Board.HorizontalsCrollPosition não ajudará neste caso.

Muito obrigado.

Foi útil?

Solução

Eu acho que sua melhor aposta é aninhar telas. Uma tela é um tamanho fixo que contém a área rolável menor e a outra é a tela completa. Algo como

<mx:Canvas id="boardContainer" width="800" height="600">
  <mx:Canvas id="board" width="800" height="1200" />
</mx:Canvas>

Dessa forma, você tem uma referência a uma tela que não é mascarada e poderá pegar um bitmapdata de toda a área.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top