Estou tentando transformar um documento RTF em uma imagem. Meu documento RTF possui apenas 1 linha: “Isto é um documento RTF.” e quando eu gero a imagem, fica uma tela preta.
Alguém possui alguma direção sobre o que posso estar fazendo errado?
Segue o código.
public String converterRtfParaImagem(byte[] arquivoRTF){
try{
String arquivoJpg= "arquivo.jpg";
// Create an RTF editor window
RTFEditorKit rtf = new RTFEditorKit();
JEditorPane editor = new JEditorPane();
// Load an RTF file into the editor
ByteArrayInputStream bais = new ByteArrayInputStream(arquivoRTF);
//FileInputStream fi = new FileInputStream(bais);
rtf.read(bais, editor.getDocument(), 0);
// create an image and render the document into it
BufferedImage bimage = new BufferedImage(400, 300, BufferedImage.TYPE_INT_RGB);
editor.paint(bimage.getGraphics());
ImageIO.write(bimage, "JPEG", new File(arquivoJpg));
return arquivoJpg;
}catch (Exception e){
e.printStackTrace();
return null;
}
}
editor.setEditorKit(rtf);
editor.setBackground(Color.white);
Aparentemente o teu fonte foi inspirado neste aqui, caso só com a alteração acima não funcione dá uma olhada neste link: http://www.coderanch.com/how-to/java/RTF2Image
editor.setEditorKit(rtf);
editor.setBackground(Color.white);
Aparentemente o teu fonte foi inspirado neste aqui, caso só com a alteração acima não funcione dá uma olhada neste link: http://www.coderanch.com/how-to/java/RTF2Image
Boa sorte!
[/quote]
Obrigado Jamir.
De fato, me baseei nesse link para essa implementação. Infelizmente só adicionar estas 2 linhas não funcionou. Eu precisei aproveitar todo o arcabouço que ele usa do swing para gerar as imagens. Vou continuar procurando uma forma de fazer isso sem o restante do código.
Bom, segue alguns dos links que encontrei enquanto pesquisava por respostas: