2010-04-29 9 views

Répondre

1

Voici comment vous le feriez si la l'image a été un fichier de ressources de l'application:

byte[] imgData = null; 
InputStream in = Application.getApplication(). 
     getClass().getResourceAsStream(imgName); 
if(in == null) { 
    // Handle appropriately 
} 

try { 
    int length = in.available(); 
    imgData = new byte[length]; 
    in.read(bytes, 0, length); 
} finally { 
    in.close(); 
} 

if(imgData == null) { 
    // Handle appropriately 
} 

EncodedImage encodedImage = 
     EncodedImage.createEncodedImage(imgData, 0, imgData.length); 

Vous pouvez également transmettre une chaîne en tant que paramètre pour définir le type MIME. Ce sont les types MIME pris en charge:

  • "image/gif"
  • "image/png"
  • "image/vnd.wap.wbmp"
  • "image/jpeg" (prise en charge uniquement sur Les périphériques couleur)
  • "image/jpg" (prise en charge uniquement sur les appareils de couleur)
  • "image/pjpeg" (prise en charge uniquement sur les appareils de couleur)
  • "image/bmp"
  • "image/tiff"

Enfin, voici la documentation 4.5: [EncodedImage Javadocs 4.5] [1]

[1]: http://www.blackberry.com/developers/docs/4.5.0api/net/rim/device/api/system/EncodedImage.html#createEncodedImage(byte[], int, int)

+0

salut fostah, Merci pour votre réponse rapide. Mais j'obtiens le problème à la ligne ci-dessous: byte [] imageData = Resource.getResourceClass(). GetResource ("res_img.gif"); compilateur donnant l'erreur que getResourceClass() est indéfini pour Resource. Et je n'ai pas pu trouver de documentation pour la classe Resource dans l'API blackberry jde 4.5. Merci et salutations, Vivek Birdi. – user291977

+0

Vous avez raison. Je vais mettre à jour comment faire ce que Resource.getResourceClass(). GetResource() fait. Désolé pour ça. – Fostah

+0

ok, Mais merci beaucoup. J'ai la solution. Entrée InputStream = this.getClass(). GetResourceAsStream ("image.png"); EncodedImage encoded = null; try { octet [] b = nouvel octet [input.available()]; input.read (b); encoded = EncodedImage.createEncodedImage (b, 0, b.length); } catch (Exception e) { \t System.out.println ("Exceptin" + e); } Et l'image doit être présente dans le même paquet que celui où nous écrivons la classe ou si nous avons besoin d'un chemin pour spécifier où nous avons localisé l'image. – user291977