Oi Marcio,
no meu caso, precisei criar uma imagem p/ usar em servlets e grava-la
no formato JPEG em um diretorio temporario. Segue o trecho do codigo que
usei:
import com.sun.image.codec.jpeg.JPEGImageEncoder;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
/******************************************************************************
* criarBufferedImage: Cria e retorna uma BufferedImage onde o chart ser
desenhado
*
****************************************************************************/
protected BufferedImage criarBufferedImage(int width, int height) {
BufferedImage image = new BufferedImage(width , height,
BufferedImage.TYPE_INT_RGB);
Graphics2D g = image.createGraphics();
this.desenha(g,(width/2), (height/2));
g.dispose();
return image;
}
/******************************************************************************
* salvaChartComoJPEG: Salva o chart como um arquivo no formato JPEG no
diretrio
* temporario
*
****************************************************************************/
protected String salvaChartComoJPEG(BufferedImage chartImage, String
strPFileName)
throws IOException {
this.criarDiretorioTemporario();
File tempFile = File.createTempFile(strPFileName, ".jpeg");
OutputStream out = new BufferedOutputStream(new
FileOutputStream(tempFile));
//codifica a imagem p/ JPEG
JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
JPEGEncodeParam param =
encoder.getDefaultJPEGEncodeParam(chartImage);
param.setQuality(0.75f, true);
encoder.encode(chartImage, param);
out.close();
return tempFile.getName();
}
/******************************************************************************
* criarDiretorioTemporario: Cria diretorio temporario no sistema
*
****************************************************************************/
protected void criarDiretorioTemporario() {
String tempDirName = System.getProperty("java.io.tmpdir");
if (tempDirName == null) {
throw new RuntimeException(
"O diretrio temporrio do sistema (java.io.tmpdir) nulo");
}
// Cria um diretrio temporrio se este no existe
File tempDir = new File(tempDirName);
if (!tempDir.exists()) {
tempDir.mkdirs();
}
}
On Mon, 25 Nov 2002 [EMAIL PROTECTED] wrote:
> Ol�, Pessoal!
>
>
> Tenho uma classe que extende JPanel e cria um objeto gr�fico com linhas e
> imagens. Como fa�o para gravar este ojeto gr�fico em disco no formato .JPG?
>
>
> Obrigado � quem puder me ajudar.
>
> M�rcio.
>
Espero ter ajudado,
abraco Kristiany.
Kristiany Kukert Zamai
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Grupo STELA - EPS UFSC - www.stela.ufsc.br
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[EMAIL PROTECTED]
ICQ: 51469971
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
------------------------------ LISTA SOUJAVA ----------------------------
http://www.soujava.org.br - Sociedade de Usu�rios Java da Sucesu-SP
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------