Olá pessoal,
Estou tentando imprimir uma imagem obtida de um JPanel em um relatório gerado pelo iReport. Veja o código:
public Image criaImagem(JPanel p)
{
Dimension d = p.getPreferredSize();
/* get the image on the Panel */
BufferedImage buffer =
new BufferedImage((int)d.getWidth(),(int)d.getHeight(),
BufferedImage.TYPE_INT_RGB);
Graphics g = buffer.getGraphics();
p.paint(g);
g.dispose();
return buffer;
}
Porém esse código só funciona quando as dimensões do painel são pequenas. Se eu tiver uma imagem muito grande, só um pedaço é impresso, e fica “repetida” no relatório.
Detalhe: A imagem no iReport está setada como FillFrame (preenche totalmente o espaço da imagem, sem repetições)
Agradeço se puderem ajudar.