Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.awt.image.DataBufferInt;
- import java.awt.*;
- import javax.swing.*;
- import java.awt.Toolkit;
- import java.awt.image.BufferedImage;
- import java.util.Arrays;
- import java.util.OptionalDouble;
- public class Main {
- public static void main(String[] args) throws AWTException {
- long startTime = System.nanoTime();
- Robot robot = new Robot();
- Rectangle screenRect = new Rectangle(Toolkit.getDefaultToolkit().getScreenSize());
- BufferedImage screenFullImage;
- screenFullImage = robot.createScreenCapture(screenRect);
- int[] pixels = ((DataBufferInt) screenFullImage.getRaster().getDataBuffer()).getData();
- OptionalDouble average = Arrays.stream(pixels).parallel().average();
- int resultColor = new Double(average.getAsDouble()).intValue();
- int r = (resultColor)&0xFF;
- int g = (resultColor>>8)&0xFF;
- int b = (resultColor>>16)&0xFF;
- int a = (resultColor>>24)&0xFF;
- System.out.println("R: " + r);
- System.out.println("G: " + g);
- System.out.println("B: " + b);
- System.out.println("A: " + a);
- long stopTime = System.nanoTime();
- System.out.println((stopTime - startTime) / 1000 / 1000);
- JFrame frame = new JFrame();
- frame.getContentPane().setLayout(new FlowLayout());
- ImageIcon imgIcon = new ImageIcon(screenFullImage);
- frame.getContentPane().add(new JLabel(imgIcon));
- frame.pack();
- frame.setVisible(true);
- JFrame frame2 = new JFrame();
- frame2.setSize(100,100);
- frame2.getContentPane().setBackground(new Color(r,g,b,a));
- frame2.setVisible(true);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment