Bonjour à tous,
Quelques temps que je lis le forum et je me décide enfin à franchir le cap! Utilisant beaucoup Matlab au travail j'ai appris à en apprécier le langage et la puissance de calcul (le couplage simulink / Dspace est exceptionnel!). Du coup je me met à utiliser le soft pour des applications personnelles diverses et variées.
Généralement je m'inspire des programmes trouvés dans le matlab exchange file mais en ce moment je suis bloqué sur un problème d'interface entre java et Matlab.
* Objectif
Faire des "screenshot" depuis Matlab d'une application qui tourne sous windows.
* solution actuelle
en fouillant le matworks, j'ai trouvé le script suivant qui répond en partie au problème:
Cependant il est alors nécessaire que la fenêtre graphique de l'application soit positionné dans le rectangle d'acquisition (de coordonnées x,y,w,h).
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 x=0; y=0; w=750; h=550; robo = java.awt.Robot; t = java.awt.Toolkit.getDefaultToolkit(); rectangle = java.awt.Rectangle(x,y,w,h); image = robo.createScreenCapture(rectangle); filehandle = java.io.File('screencapture.jpg'); javax.imageio.ImageIO.write(image,'jpg',filehandle); imageview('screencapture.jpg');
Et je suis bien obligé de dégager toutes les autres fenêtre graphiques du rectangle.
* question
Est-il possible de faire un screenshot sélectif, basé uniquement sur la fenêtre graphique windows de mon choix et non pas sur une simple photographie d'écran?
PS: je tourne sous Matlab 2008b
Partager