SEGUINTE …
Dessa vez ta foda -.-.
- tenho um pdf;
- o pdf tem imagens;
- eu uso a api iText pra pegar as imagens;
- a api me retorna os bytes das imagens;
com jpeg a coisa flui normal…
PROBLEMA:
para jpegs o iText nao faz nenhum tratamento… nenhum encode…
MAS …
para outros tipos como PNG … ele faz um FlateEncode … um tipo de zip do proprio java …
entao… quando me volta os bytes da imagem… ele ta compactado…
eu to pegando o proprio método da api … pra fazer o decod…
byte[] bytesDecod = PdfReader.FlateDecode(bytes);
ele me retorno os bytes descompactados…
esses bytes representam uma imagen …
MAS EU NÃO SEI O TIPO DELA…
pode ser em P&B pode ser colorido …
pode ser png…
pode ser BMP …
até entao… pelo que eu sei esses bytes tao como imagem pura…
acho que bmp mesmo…
a principio a primeira coisa q eu quero fazer é pegar esse meu array de byte e conseguir gerar um arquivo de imagem.
simples assim…
tipo…
pra jpeg… eu apenas faço isso …
[code]}else{
Image image = Toolkit.getDefaultToolkit().createImage(bytes);
images.add(ImageUtils.toBufferedImage(image,
Integer.parseInt(pdfStrem.get(PdfName.WIDTH).toString()),
Integer.parseInt(pdfStrem.get(PdfName.HEIGHT).toString())));[/code]
e funciona…
ele me retorna uma bufferedImage valida… que eu serializo e posso visualizar…
mas para aqueles bytes decodados nao…
HELP URGENTE.
String colorSpace = pdfStrem.get(PdfName.COLORSPACE).toString();
String filter = pdfStrem.get(PdfName.FILTER).toString();
int bits = Integer.valueOf(pdfStrem.get(PdfName.BITSPERCOMPONENT).toString());
int width = Integer.valueOf(pdfStrem.get(PdfName.WIDTH).toString());
int height = Integer.valueOf(pdfStrem.get(PdfName.HEIGHT).toString());
PdfDictionary param = (PdfDictionary)pdfStrem.get(PdfName.DECODEPARMS);
int colors = Integer.valueOf(param.get(PdfName.COLORS).toString());
int predictor = Integer.valueOf(param.get(PdfName.PREDICTOR).toString());
int colums = Integer.valueOf(param.get(PdfName.COLUMNS).toString());
if(filter.equals("/FlateDecode"))
{
byte[] bytesDecod = PdfReader.FlateDecode(bytes);
Bom isso é tudo as informações que eu consigo pegar do meu pdf sobre a imagem…
alguem poderia me explicar o que é … e como eu pego ou calculo o band offSet da imagem ?
RESOLVIDO USANDO ITEXT+PDF RENDERER USEI UMA MISTURA DE CLASSES …