IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Image dans un tableau de word


Sujet :

Collection et Stream Java

  1. #1
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Août 2007
    Messages : 86
    Points : 46
    Points
    46
    Par défaut Image dans un tableau de word
    Salut

    je doit faire appelle a une fonction dans une librairie qui prend comme paramètre une image mais elle n'ai pas dans un tableau de byte mais un élément du tableau c'est 32 bit de l'image par exemple:
    byte : 0000 0000 0001 0000 1111 1100 0111 1111 | 1111
    dans mon tableau sa reviendrai à:
    map[0] = 0x0010fc7f; map[1] = 0xf0000000;

    en plus le map[0] c'est les 32 bit en bas, à gauche.

    est-ce-que qqn sait comment je pourrai faire ça?

    merci

  2. #2
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2009
    Messages : 112
    Points : 136
    Points
    136
    Par défaut
    Salut,

    Je ne suis pas sûr d'avoir bien compris ta question. Ce que tu veux faire, c'est bien convertir une image représentée par un tableau de bits, en un tableau d'hexa (chaque case codant un nombre sur 32 bits) et dont la première case (du tableau d'hexa) représente le coins bas-gauche de ton image de départ ?

  3. #3
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Août 2007
    Messages : 86
    Points : 46
    Points
    46
    Par défaut
    oui, c'est ça, j'ai écris un petit bout de code qui lit le tableau binaire et conserve ensemble chaque 32 bit d'une ligne ( j'essaie maintenant de convertir les 32 bit en hexa) , mais je me demandé s'il n'y avait pas une manière plus directe.

  4. #4
    Membre habitué
    Homme Profil pro
    Inscrit en
    Juin 2009
    Messages
    112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Juin 2009
    Messages : 112
    Points : 136
    Points
    136
    Par défaut
    A priori, je n'ai pas l'impression qu'il y ait une manière beaucoup plus efficace que de faire une conversion "bête et méchante" comme celle que tu es en train d'implémenter.
    A la limite tu peux faire des recherches sur des API de traitement d'images. Peut-être trouveras-tu la fonction que tu veux (ou au moins une qui pourrait te faciliter la tâche)

  5. #5
    Membre du Club
    Inscrit en
    Août 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Août 2007
    Messages : 86
    Points : 46
    Points
    46
    Par défaut
    oui, c'est un format bête mais puisque la librairy que j'utilise le demande, j'ai pas vraiment le choix
    à la fin j'ai pris un tableau temporaire de longueur 32 pour sauvegarder chaque 32 bit de l'image et fair la conversion en hexadecimal.

    voici le code, que j'ai écris pour la conversion des 32 bit en hexadécimal

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    public class BinaryToString{
     
        static class ConversionConstants {
            int radix; // the base radix
            int width; // number of chars used to represent byte
     
            ConversionConstants(int w, int r) {
                width = w;
                radix = r;
            }
        }
     
        public static final int HEX = 16;
     
        static ConversionConstants hex = new ConversionConstants(1, 32);
     
     
     
        public static String convertToString(Byte[] data ) {
     
            if (data == null) {
                return null;
            }
            StringBuilder buf = new StringBuilder(20);
            ConversionConstants convConst = hex;
     
            // Convert each byte and put into string buffer
            int i=0;
            while (i< data.length){        	
            	String g="";
     
            	for(int j=1; j<=4; j++){        		
            		String c =String.valueOf(data[i]);
            		i++;        		
            		g=g+c;
            	}
     
            	int value = Integer.parseInt(g,2);        	
     
                String s = null;             
                if (s == null) s = Integer.toHexString(value);                
     
                 if (s.length() > convConst.width)
                        s = s.substring(s.length() - convConst.width);
     
                    // front pad with zeros and add to output
                    if (s.length() < convConst.width) {
                        buf.append("00000000".substring(8 - (convConst.width - s.length())));
                    }                       
                buf.append(s);            
            }
            return ("0x"+buf.toString());
        }
     
     
        private BinaryToString() {
        }
    }
    l'exécution donne ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    000000000001000011111100011111111111 :
     
    0x0010fc7f
     
    0xf0000000

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD-2003] Comment inserer automatiquement des images dans un tableau word
    Par grooveus75 dans le forum VBA Word
    Réponses: 2
    Dernier message: 06/01/2010, 12h37
  2. Insertion multiple d'images dans un tableau sous Word
    Par madchemiker dans le forum VBA Word
    Réponses: 1
    Dernier message: 08/02/2008, 15h16
  3. Redimensionner les images dans un tableau
    Par cyke37 dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 13/10/2005, 19h19
  4. Navigation dans un tableau avec Word
    Par Sinclar dans le forum Access
    Réponses: 1
    Dernier message: 12/09/2005, 19h12
  5. ligne blanche sous une image dans un tableau
    Par spikelille dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 10/09/2005, 18h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo