locked
Salvar uma imagem da aplicação RRS feed

  • Pergunta

  • Galera,

    eu preciso salvar uma imagem da minha tela silverlight, como se fosse um print screen da tela, mas só da aplicação silverlight. Alguém sabe se é possível fazer isso?

    Tipo o cara aperta um botão, e tira uma foto dessa tela silverlight pra eu gerar uma imagem.

    Obrigado,

    Thiago

    segunda-feira, 23 de agosto de 2010 21:40

Respostas

  • VinTem,

    É possível criar uma instância da classe WriteableBitmap cujo construtor solicita um UIElement e com isso utilizar a propriedade Pixels dessa classe para criar uma imagem conforme o formato que deseja. Por exemplo:

    var writeableBitmap = new WriteableBitmap(seuGrid, null);

    O maior problema é que não existem classes no Silverlight para realizarmos a gravação da imagem em um formato conhecido tal como fazemos com o WPF (essa é a funcionalidade #1 do meu wishlist para o SL5). Felizmente existem alguns códigos open-source bem interessantes que podem lhe ajudar, tal como os dois abaixo:

    JPEG - fjcore
    http://code.google.com/p/fjcore/

    PNG - Dynamic Image Generation in Silverlight
    http://blogs.msdn.com/b/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx

    Se não desejar incluir todo esse código em sua aplicação Silverlight é possível ainda criar um serviço que receba o array de bytes e transforma o mesmo no formato desejado no servidor (será que vale a pena?).

    Obs: Já utilizei o fjcore e funciona bem.

    Espero ter ajudado.

    Ari C. Raimundo
    MCAD, MCTS
    http://araimundo.blogspot.com

    • Marcado como Resposta VinTem terça-feira, 24 de agosto de 2010 18:57
    terça-feira, 24 de agosto de 2010 04:33

Todas as Respostas