Olá,
Onde trabalho, utilizamos um programa que se chama Snagit, ele é capaz de tirar um Print Screen, da tela de uma forma completa, se a Janela possuir barra de rolagem é possível tirar o print de toda a janela.
Duas imagens de exemplo:

Opção para tirar o print no formato vertical

Resultado
Bom minha pergunta é, se é possível fazer em Java? Se alguém tem idéia de como foi feito? E o que precisarei usar para fazer isso.
Obrigado.