Galera estou criando uma imagem no BufferedImage do AWT, imprimindo nela uns textos e salvando, no formato BMP Binary, até ai tudo bem funcionando perfeitamente, segue o codigo abaixo.
BufferedImage image= new BufferedImage(x, y, BufferedImage.TYPE_BYTE_BINARY);
Graphics g = image.getGraphics();
g.setColor(Color.white);
g.fillRect(0, 0, x, y);
g.setColor(Color.black);
g.drawString("TESTE DE IMPRESSAO", 20,20);
ImageIO.write(image, "bmp", new File(file2));
Mas este codigo no meu caso não vai funcionar pois estou usando a J9 da IBM e o BufferedImage que ele utiliza é diferente, o construtor é diferente e nao consigo utiliza-lo, uma ideia seria trabalhar apenas com Image, ou Canvas, mas nem sei como fazer isso.
Outra idéia que tive foi utilizar o Image do SWT, pois a J9 suporta SWT nativamente, estou utilizando o seguinte codigo!
Image imagem = new Image(display, x, y);
GC g = new GC(imagem);
g.setBackground(display.getSystemColor(SWT.COLOR_WHITE));
g.setForeground(display.getSystemColor(SWT.COLOR_BLACK));
g.setFont(new Font(Display.getDefault(), "DIALOG", font, SWT.NORMAL));
g.drawString("teste de impressap", 30, 30);
g.dispose();
ImageData data=imagem.getImageData();
ImageLoader loader = new ImageLoader();
loader.data = new ImageData[]{imagem.getImageData()};
loader.save(file, SWT.BITMAP);
imagem.dispose();
display.dispose();
Este codigo funcionou esta rodando na J9, mas agora estou com o seguinte problema, a Imagem gerada no SWT é uma imagem BMP de 24bits, isso da um total de 2mb de imagem, e não achei forma de salva-la em byte Binary como o codigo acima usando BufferImage.
Estou pedindo a ajuda de vcs para me ajudar de alguma forma salvar esta imagem em bmp binario, pois ela é preto e branco apenas, igual o codigo acima, aceito outras ideias tb.
Obrigado!