Enregistrer une image contenue dans le presse-papier

Soyez le premier à donner votre avis sur cette source.

Vue 10 455 fois - Téléchargée 666 fois

Description

N'ayant rien trouvé de source à ce sujet sur JavaFR, j'en profite pour poster cette toute petite source qui permet d'enregistrer une image contenue dans le presse-papier.

Source / Exemple :


import java.awt.Image;
import java.awt.Toolkit;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.Transferable;
import java.awt.datatransfer.UnsupportedFlavorException;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

import javax.imageio.ImageIO;

public class ClipboardImage {
	
	private static void saveImage(BufferedImage image, String fileName) {
		try {
			ImageIO.write(image, "jpeg", new File(fileName));
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

	public static Image getClipboardImage() {
		Transferable transfer = Toolkit.getDefaultToolkit().getSystemClipboard().getContents(null);
		try {
			if (transfer != null && transfer.isDataFlavorSupported(DataFlavor.imageFlavor)) {
				return (BufferedImage) transfer.getTransferData(DataFlavor.imageFlavor);
			}
		} catch (UnsupportedFlavorException e1) {
			e1.printStackTrace();
		} catch (IOException e2) {
			e2.printStackTrace();
		}
		return null;
	}
	
	public static void saveClipboard(String fileName) {
		BufferedImage image = (BufferedImage) getClipboardImage();
		saveImage(image, fileName);
	}
}

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
16
Date d'inscription
vendredi 8 juin 2007
Statut
Membre
Dernière intervention
9 décembre 2010

Bon, je pense que la piste du java n'est pas mauvaise, j'ai toujours la possibilité d'indiquer un lien de téléchargement du java pour les utilisateurs et même si ma source n'est pas signée, le proposer quand même...
Le tout est déjà de savoir comment faire....

La question reste donc ouverte pour celui qui pourra m'aider,
merci en tous cas de m'avoir répondu.
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
47
Avec Silverlight c'est faisable (dumoins pour du texte):
http://www.jeff.wilcox.name/2008/05/clipboard-access/
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
96
666merlin : à part passer par une applet signée (qui aurait donc accès au presse-papier), ta demande me semble guère réalisable : il faut du code s'éxécutant niveau client, donc oublie le PHP. Le javascript ne te permettra pas de faire cà, à moins de passer par un ocx qui ne sera pas portable. Java te le permet, mais au coût d'une applet signé (lourd à charger, et oblige l'utilisateur à utiliser un certificat pour utiliser l'applet). Après faut voir du côté de flash ou de silverlight s'ils proposent une solution à cà.
Messages postés
16
Date d'inscription
vendredi 8 juin 2007
Statut
Membre
Dernière intervention
9 décembre 2010

Bonjour,
Ca a l'air d'être ce que je cherche, mais ne programmant pas du tout en Java (pour moi c'est uniquement PHP, JavaScript et HTML) je ne sais pas du tout comment mettre en oeuvre cette source.
SVP quelqu'un pourrait-il m'aider ?

En fait, ce que je cherche à faire, c'est qu'un utilisateur puisse envoyer directement par formulaire le contenu d'une image stockée dans le presse papier.
Style, il appui sur la touche "Imprim écran" et clique sur un bouton du site pour m'envoyer l'image du presse papier...

Si quelqu'un à la solution, je lui en serait éternellement reconnaissant, idem pour tous ceux que je pourrai aider grâce à ça.

Merci d'avance !
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
96
Mise à jour de la source afin de rajouter le zip + en faire une classe réutilisable + rajout de la fonction de récupèration de l'image directement, sans passer par un fichier sur disque.
Afficher les 11 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.