J2ME - Come creare un'immagine in formato JPG?
-
16-09-2019 - |
Domanda
La mia applicazione J2ME deve scattare una foto, modificare un po 'e salvarlo da qualche parte (o inviare a server).
Camera ritorno mi byte di un'immagine in formato jpg, ma dopo che ho creato un oggetto Immagine da esso (usando Image.createImage()
), non ho potuto impacchettare di nuovo a jpg.
C'è qualche encoder JPEG per J2ME?
Ho trovato uno scritto in J2SE, ma utilizza le classi specifiche J2SE.
Soluzione 2
A proposito, poiché JSR 234 non sta sostenendo su molti dispositivi, prendo libreria di immagini JIMI Sun e porta JPEG codificanti parte j2me. Funziona bene e non usa troppa memoria.
Altri suggerimenti
Questo può essere fatto! Anche senza alcun API proprietarie o librerie. Ciò può essere ottenuto se il telefono supporta JSR 234 e ha la capacità di elaborare i file JPEG attraverso di essa. A tale scopo:
//Create MediaProcessor for raw Image
MediaProcessor mediaProc = GlobalManager.createMediaProcessor("image/raw");
//Get control over the format
ImageFormatControl formatControl = (ImageFormatControl)
mediaProc.getControl("javax.microedition.amms.control.ImageFormatControl");
//Set necessary format
formatControl.setFormat("image/jpeg");
Poi si imposta Image
di input, output stream e avvia il processore multimediale. Ecco! Avete salvato l'immagine in formato JPEG.
E 'puramente a carico di attuazione, alcuni dispositivi consentono di creare un oggetto immagine utilizzando un file jpg, mentre altri no. Tuttavia spec di Sun dice che i dispositivi devono supportare png, tuttavia gli altri sono a discrezione dei produttori OEM