Comment imprimer un écran en Java

Comment imprimer l'écran en Java

1. Vue d'ensemble

Lorsque vous devez exécuter une action d’écran d’impression sur votre bureau, un bouton intégré «PrntScr» sur le clavier vous aide à y accéder. Parfois, cela suffit.

Mais le problème se pose lorsque vous devez effectuer cette action par programme. En termes simples, vous devrez peut-être enregistrer une capture d'écran actuelle en tant que fichier image en utilisant Java.

Voyons comment nous pouvons y parvenir.

2. La classeRobot

La classe Javajava.awt.Robot est la principale API que nous allons utiliser. Cet appel contient une méthode appelée «createScreenCapture» qui prend une capture d'écran lorsqu'une forme spécifique est transmise:

robot.createScreenCapture(rectangle);

Comme la méthode ci-dessus renvoie une instancejava.awt.image.BufferedImage, tout ce que vous avez à faire est d'écrire l'image récupérée dans un fichier en utilisant la classe utilitairejavax.imageio.ImageIO.

3. Capture et enregistrement du fichier image

Le code Java pour la capture et l'enregistrement d'images est le suivant:

public void getScreenshot(int timeToWait) throws Exception {
    Rectangle rec = new Rectangle(
      Toolkit.getDefaultToolkit().getScreenSize());
    Robot robot = new Robot();
    BufferedImage img = robot.createScreenCapture(rectangle);

    ImageIO.write(img, "jpg", setupFileNamePath());
}

Ici, il est possible de capturer une partie de l'écran en définissant la taille requise sur l'instancejava.awt.Rectangle. Cependant, dans l'exemple ci-dessus, il a été configuré pour capturer le plein écran en définissant la taille d'écran actuelle.

4. Conclusion

Dans ce tutoriel, nous avons examiné rapidement l'utilisation d'un écran d'impression en Java. Le code source des exemples ci-dessus se trouve dansthe GitHub project.