[AWT] créer une simple BufferedImage
Bonjour !
J'ai recuperer du code permetant d'afficher une webcam dans awt (utilisant qtjava).
Le probleme c'est que ce code met un filtre bleu par dessus l'image a la création du bufferedImage, et moi j'aimerai avoir l'image en couleur !
J'ai isolé le code qui créer cette image :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| // Setting up the buffered image
int size = gWorld.getPixMap().getPixelData().getSize();
int intsPerRow = gWorld.getPixMap().getPixelData().getRowBytes()/4;
size = intsPerRow*cameraImageSize.getHeight();
final int[] pixelData = new int[size];
DataBuffer db = new DataBufferInt(pixelData, size);
ColorModel colorModel = new DirectColorModel(32, 0x00ff0000, 0x0000ff00, 0x000000ff);
int[] masks= {0x00ff0000, 0x0000ff00, 0x000000ff};
WritableRaster raster = Raster.createPackedRaster(db, cameraImageSize.getWidth(), cameraImageSize.getHeight(), intsPerRow, masks, null);
final BufferedImage image = new BufferedImage(colorModel, raster, false, null); |
J'ai essayé de créer une BufferedImage plus simplement de cette façon :
Code:
final BufferedImage image = new BufferedImage(320,240,BufferedImage.TYPE_INT_RGB);
Mais évidement cela ne marche pas ... (manque la liaison avec le DataBuffer je pense) L'image "affiché" est totalement noir
Si vous pouvez m'aidez je vous en remerci :)