Como gravar arquivos de imagem?

0 respostas
D

Pessoal, é o seguinte, criei o meu primeiro aplicativo mais sério em Java (veja em davidbuzatto.blog.uol.com.br) ele resolvre funções de primeiro e segundo grau e desenha o gráfico destas.

O gráfico é desenhado em um painel, gostaria de saber se tem como eu criar um fluxo para gravar o desenho que está feito no painel.

Obrigado!

JFileChooser chooser = new JFileChooser();
chooser.setDialogTitle( "Exportar gráfico para arquivo de imagem" );

chooser.setApproveButtonText( "Exportar" );
chooser.setApproveButtonMnemonic( 'E' );
chooser.setApproveButtonToolTipText( "Exporta gráfico para arquivo de imagem" );

chooser.setCurrentDirectory( new File( "." ) );
chooser.setFileFilter(
	new FileFilter() {
		public boolean accept( File f ) {
			return f.getName().toLowerCase().
						endsWith( ".jpg" ) ||
				   f.getName().toLowerCase().
				   		endsWith( ".gif" ) ||
				   f.getName().toLowerCase().
						endsWith( ".bmp" ) ||
				   f.isDirectory();
		}

		public String getDescription() {
			return "Arquivos de Imagem (*.jpg;*.gif;*.bmp)";
		}
	}
);

int r = chooser.showSaveDialog( this );

if ( r == JFileChooser.APPROVE_OPTION ) {

	// retorna o nome do arquivo selecionado
	// ou o nome do arquivo digitado em File Name
	File arquivo = chooser.getSelectedFile();

	if ( arquivo == null || arquivo.getName().equals("") )
		JOptionPane.showMessageDialog(this, "Nome de arquivo inválido",
			"Nome de arquivo inválido", JOptionPane.ERROR_MESSAGE);

	else {
		try {
			ObjectOutputStream saida = new ObjectOutputStream(
				new FileOutputStream( arquivo ) );
			saida.writeObject( pPlotagem );
			saida.close();
			
			/* até aqui tudo bem, criou o arquivo
			 baseado no objeto pPlotagem.
			 agora como faço para converter o objeto em
			 imagem?
			 ja tentei usar os pacotes javax.imageio e
			 javax.imageio.stream
			 mas num me dei muito bem 
			 só consegui criar o arquivo do objeto*/

		}

		catch ( IOException exc ) {
			JOptionPane.showMessageDialog( this,
				"Erro ao criar arquivo.", "Erro",
				JOptionPane.ERROR_MESSAGE );
		}

	}

}
Criado 12 de fevereiro de 2005
Respostas 0
Participantes 1