Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[JAI] Facile facile :->

0 views
Skip to first unread message

jj

unread,
Aug 26, 2002, 8:30:53 AM8/26/02
to
Ho l'hex di un files GIF in una stringa e con JAI vorrei convertire la GIF
in un BMP.

Convertito l'hex bei byte del file, creo uno StringBufferInputStream e lo
wrappo
su un SeekableStream e lo passo come "stream" a JAI

Problema, JAI leggendo dallo stream chissà come cazz fa a sapere che tipo di
immagine sta leggendo...
vabbè poche parole e molti fatti, ecco 4 righe di codice:

// CREA LO STRINGBUFFER DAL BINARIO
StringBufferInputStream streamdistringa=new
StringBufferInputStream(this.Hex2Bin());

// WRAPPA IN UNO SEEKABLE PER JAI
SeekableStream
streamImmagine=SeekableStream.wrapInputStream(streamdistringa,false);

// CREA L'OGGETTO source DALLO STREAM
RenderedOp src= JAI.create("stream",streamImmagine);

// SALVA il source come BMP nel file test.bmp
JAI.create("filestore", src, "test.bmp", "BMP", null);

In ritorno mi spara (sull'ultima create) un bel:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at javax.media.jai.FactoryCache.invoke(FactoryCache.java:130)
at
javax.media.jai.OperationRegistry.invokeFactory(OperationRegistry.java:1669)
at
javax.media.jai.ThreadSafeOperationRegistry.invokeFactory(ThreadSafeOperatio
nRegistry.java:481)
at javax.media.jai.registry.RIFRegistry.create(RIFRegistry.java:340)
at javax.media.jai.RenderedOp.createInstance(RenderedOp.java:805)
at javax.media.jai.RenderedOp.createRendering(RenderedOp.java:853)
at javax.media.jai.RenderedOp.getSampleModel(RenderedOp.java:2189)
at com.sun.media.jai.codecimpl.BMPCodec.canEncodeImage(BMPCodec.java:60)
at
javax.media.jai.operator.FileStoreDescriptor.validateArguments(FileStoreDesc
riptor.java:163)
at javax.media.jai.JAI.createNS(JAI.java:899)
at javax.media.jai.JAI.create(JAI.java:786)
at javax.media.jai.JAI.create(JAI.java:1471)
at atomicsms.ContentConverter.prova1(ContentConverter.java:72)
at atomicsms.ContentConverter.main(ContentConverter.java:94)
Caused by: java.lang.IllegalArgumentException: src must support seeking
backwards or marking.
at com.sun.media.jai.codec.ImageCodec.getDecoderNames(ImageCodec.java:253)
at com.sun.media.jai.opimage.StreamRIF.create(StreamRIF.java:74)
... 18 more
java.lang.RuntimeException: - Unable to render RenderedOp for this
operation.
at javax.media.jai.RenderedOp.createInstance(RenderedOp.java:813)
at javax.media.jai.RenderedOp.createRendering(RenderedOp.java:853)
at javax.media.jai.RenderedOp.getSampleModel(RenderedOp.java:2189)
at com.sun.media.jai.codecimpl.BMPCodec.canEncodeImage(BMPCodec.java:60)
at
javax.media.jai.operator.FileStoreDescriptor.validateArguments(FileStoreDesc
riptor.java:163)
at javax.media.jai.JAI.createNS(JAI.java:899)
at javax.media.jai.JAI.create(JAI.java:786)
at javax.media.jai.JAI.create(JAI.java:1471)
at atomicsms.ContentConverter.prova1(ContentConverter.java:72)
at atomicsms.ContentConverter.main(ContentConverter.java:94)
Exception in thread "main"


jj

unread,
Aug 26, 2002, 10:12:50 AM8/26/02
to
Bastava cambiare il FALSE in TRUE :-PP

J
"jj" <j...@thecloud.or> ha scritto nel messaggio
news:bepa9.377$yQ2....@news.it.colt.net...

0 new messages