locked
Salvar Imagem no WP7 RRS feed

  • Pergunta

  • Olá.

    Em minha aplicação WP7 em um determinado momento eu gero uma imagem através da class WriteableBitmap. Essa imagem está gerada na memória, agora gostaria de salvar essa imagem. Quero salvar, por exemplo, no celular ou no cartão SD. Alguém poderia ajudar?

    Obrigado.


    Marcos Aguiar Jr - Brazil blog: https://marquinhosnet.wordpress.com/

    sábado, 2 de junho de 2012 12:54

Respostas

Todas as Respostas

  • Podes guardar a imagem nas Pictures Library e depois passar a mesma para o computador usando o Zune, por exemplo!

    Podes ver aqui como fazer isso mesmo!


    Pedro Lamas
    DevScope | Senior Software Development Engineer & WP7 Development Speaker
    www.pedrolamas.com | @pedrolamas

    segunda-feira, 4 de junho de 2012 09:06
  • Olá Pedro. Obrigado pela ajuda.

    Fiz o código de exemplo e não mostrou nenhuma mensagem de erro, mas também não sei se funcionou porque não salvou nenhuma imagem.

    Segue o código que fiz:

                //cria o nome do arquivo
                String tempJPEG = "TempJPEG.jpg";
    
                //verifica se o arquivo existe, se existir apaga.
                var myStore = IsolatedStorageFile.GetUserStoreForApplication();
    
                if (myStore.FileExists(tempJPEG))
                {
                    myStore.DeleteFile(tempJPEG);
                }
    
                IsolatedStorageFileStream myFileStream = myStore.CreateFile(tempJPEG);
    
    
                WriteableBitmap wb = new WriteableBitmap(512, 512);
                wb.Render(this.pieChart1, null);
    
                wb.SaveJpeg(myFileStream, wb.PixelWidth, wb.PixelHeight, 0, 100);
                myFileStream.Close();
    
                // Create a new stream from isolated storage, and save the JPEG file to the media library on Windows Phone.
                myFileStream = myStore.OpenFile(tempJPEG, FileMode.Open, FileAccess.Read);
    
                // Save the image to the camera roll or saved pictures album.
                MediaLibrary library = new MediaLibrary();
    
                //if (radioButtonCameraRoll.IsChecked == true)
                //{
                // Save the image to the camera roll album.
                //    Picture pic = library.SavePictureToCameraRoll("SavedPicture.jpg", myFileStream);
                //    MessageBox.Show("Image saved to camera roll album");
                //}
                //else
                //{
                // Save the image to the saved pictures album.
                Picture pic = library.SavePicture("SavedPicture.jpg", myFileStream);
                MessageBox.Show("Image saved to saved pictures album");
                //}
    
                myFileStream.Close();


    this.pieChart1 é um componente de gráfico.

    O que estou fazendo de errado?

    Obrigado.


    Marcos Aguiar Jr - Brazil blog: https://marquinhosnet.wordpress.com/

    segunda-feira, 4 de junho de 2012 17:18
  • A resposta para minha dúvida está no fórum da App Hub.

    http://forums.create.msdn.com/forums/t/105300.aspx

    Obrigado.


    Marcos Aguiar Jr - Brazil blog: https://marquinhosnet.wordpress.com/

    quarta-feira, 6 de junho de 2012 15:33