Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Problème jpg/bmp/gif

3 réponses
Avatar
Riri
Bonjour, voilà, j'ai un problème, je veux afficher deux images (ici
identiques), si leurs extensions sont .jpg, ca marche, mais si c'est .bmp ou
.gif, ca ne marche pas, pourquoi?
Merci d'avance

R.

package test2;
/**
* Test des composants Bitmap
*/

import java.awt.*;
import java.awt.event.*;

public class Images3 extends Frame {

// Constructeur
public Images3() {

setTitle("Afficher Bitmap"); // Titre

// WindowListener
addWindowListener( new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});

// Définir Layout
setLayout(new GridLayout(0,2));

// Texte et image 1
add(new Label("duke 1",Label.CENTER));
add(new Bitmap("D:/Temp/b.jpg"));

// Texte et image 2
add(new Label("duke 2",Label.CENTER));
add(new Bitmap("D:/Temp/b.jpg"));

// Définir taille
setSize(250,170);
// pack();

// Rendre fenêtre visible (afficher)
setVisible(true);

}

/**
* Méthode main()
*/
public static void main( String[] args ) {
new Images3();
}
}
***********************
package test2;

/**
* Composants Bitmap
*/

import java.awt.*;

public class Bitmap extends Canvas {

// Objets
private Image image;

// Constructeur
public Bitmap(String fichier) {

// Charger image
image = getToolkit().getImage(fichier);

// Créer MediaTracker
MediaTracker mt = new MediaTracker(this);

// Lier MediaTracker avec image
mt.addImage(image, 0);

try {
//Attendre chargement complet de l'image
mt.waitForAll();
} catch (InterruptedException e) { /* Ne rien faire */ }
}

/** Méthode paint*/
public void paint(Graphics g) {
// Dessiner image
if (image != null) {
g.drawImage(image,1,1,this);
}
}

/** Taille de prédilection */
public Dimension getPreferredSize() {
return new Dimension(image.getWidth(this)+2,image.getHeight(this)+2);
}

/** Taille minimale */
public Dimension getMinimumSize() {
return getPreferredSize();
}
}

3 réponses

Avatar
Riri
De plus, a partir d'un objet Image, je voudrais récupérer les valeurs RGB de
chaque pixel, les stocker dans un tableau et recréer une image à l'aide du
constructeur MemoryImageSource et l'afficher. Comment récupérer les valeurs
de ces pixels?

Merci de votre aide,
R.

Image image2 = getToolkit().getImage("D:/Temp/b.jpg");

//Création du tableau pixel image et affichage
int w = 256;
int h = 256;
int pix[] = new int[w*h];
int index = 0;
for (int y = 0; y < h*w; y++) {
pix[index++] = ???
}
Image image = createImage(new MemoryImageSource(w, h, pix, 0, w));
Avatar
Phildes
Pour récupérer les Pixels tu peux utiliser "ImageConsumer".
Il propose les methodes "setPixels( )"


"Riri" a écrit dans le message de
news:401594b5$0$29080$
De plus, a partir d'un objet Image, je voudrais récupérer les valeurs RGB
de

chaque pixel, les stocker dans un tableau et recréer une image à l'aide du
constructeur MemoryImageSource et l'afficher. Comment récupérer les
valeurs

de ces pixels?

Merci de votre aide,
R.

Image image2 = getToolkit().getImage("D:/Temp/b.jpg");

//Création du tableau pixel image et affichage
int w = 256;
int h = 256;
int pix[] = new int[w*h];
int index = 0;
for (int y = 0; y < h*w; y++) {
pix[index++] = ???
}
Image image = createImage(new MemoryImageSource(w, h, pix, 0, w));





Avatar
Riri
Merci
R.

"Phildes" a écrit dans le message de news:
bv7266$fie$
Pour récupérer les Pixels tu peux utiliser "ImageConsumer".
Il propose les methodes "setPixels( )"


"Riri" a écrit dans le message de
news:401594b5$0$29080$
De plus, a partir d'un objet Image, je voudrais récupérer les valeurs
RGB


de
chaque pixel, les stocker dans un tableau et recréer une image à l'aide
du


constructeur MemoryImageSource et l'afficher. Comment récupérer les
valeurs

de ces pixels?

Merci de votre aide,
R.

Image image2 = getToolkit().getImage("D:/Temp/b.jpg");

//Création du tableau pixel image et affichage
int w = 256;
int h = 256;
int pix[] = new int[w*h];
int index = 0;
for (int y = 0; y < h*w; y++) {
pix[index++] = ???
}
Image image = createImage(new MemoryImageSource(w, h, pix, 0, w));