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

MATLAB Discussion :

Capture d'ecran MATLAB avec Java


Sujet :

MATLAB

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 1
    Par défaut Capture d'ecran MATLAB avec Java
    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:

    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');
    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).
    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

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Bonjour,

    J'ai bien peur que tu ne trouves pas de réponse à cette question.
    La partie "java" de MATLAB est peu documentée et assez ardue.

    Pourquoi vouloir faire ceci depuis MATLAB alors qu'il existe des utilitaires de capture d'écran un peu partout sur le Net ?

    Car si j'ai bien compris la capture que tu veux faire ne concerne pas une figure appartenant à MATLAB, c'est ça ?

Discussions similaires

  1. probleme de connexion avec matlab et java
    Par msassoum dans le forum Images
    Réponses: 3
    Dernier message: 01/06/2017, 15h58
  2. captures d'écran avec java
    Par wiss85 dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 24/03/2011, 14h52
  3. programmer sur ecrans "tactiles" avec java
    Par itmak dans le forum Général Java
    Réponses: 3
    Dernier message: 15/07/2007, 09h10
  4. capture d'ecran avec souris
    Par ash_rmy dans le forum Windows
    Réponses: 10
    Dernier message: 26/09/2006, 16h42
  5. faire une capture d'ecran avec c++?!?
    Par hansaplast dans le forum C++
    Réponses: 4
    Dernier message: 11/01/2006, 10h44

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