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.
publicStringconverterRtfParaImagem(byte[]arquivoRTF){try{StringarquivoJpg="arquivo.jpg";// Create an RTF editor windowRTFEditorKitrtf=newRTFEditorKit();JEditorPaneeditor=newJEditorPane();// Load an RTF file into the editorByteArrayInputStreambais=newByteArrayInputStream(arquivoRTF);//FileInputStream fi = new FileInputStream(bais);rtf.read(bais,editor.getDocument(),0);// create an image and render the document into itBufferedImagebimage=newBufferedImage(400,300,BufferedImage.TYPE_INT_RGB);editor.paint(bimage.getGraphics());ImageIO.write(bimage,"JPEG",newFile(arquivoJpg));returnarquivoJpg;}catch(Exceptione){e.printStackTrace();returnnull;}}
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!
V
ViniGodoy
Olá,
Por favor, ao postar tópico não é necessário destacar que se trata de uma dúvida ou pedido de ajuda.
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!
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: