Я пытаюсь создать оверлей с фоном, подобным Vista Aero Glass, вместо обычного окна. Часть моего ответа выглядит как здесь , но мне интересно, как получить эффект размытия в Swing / AWT. Это выглядит как начало:
public BufferedImage processImage(BufferedImage image) {
float[] blurMatrix = { 1.0f / 9.0f, 1.0f / 9.0f, 1.0f / 9.0f, 1.0f / 9.0f, 1.0f /
9.0f, 1.0f / 9.0f, 1.0f / 9.0f, 1.0f / 9.0f, 1.0f / 9.0f };
BufferedImageOp blurFilter = new ConvolveOp(new Kernel(3, 3, blurMatrix),
ConvolveOp.EDGE_NO_OP, null);
return blurFilter.filter(image, null);
}
... но я бы очень хотел провести близкий матч. Кажется, процесс должен быть:
- Размытие фонового изображения
- закрасьте прозрачным серым (или любым другим цветом bg),
- Затем закрасьте непрозрачное содержимое окна
Если я правильно понял, я мог бы выбросить тени границ окна Aero.
Я на правильном пути? Как точно я должен сделать размытие, чтобы получить такой же вид? Может быть, кто-то уже решил эту проблему? (Для справки откройте меню «Пуск» Vista и посмотрите на правую сторону.)