gpt4 book ai didi

java - 如何旋转JXImagePanel?

转载 作者:行者123 更新时间:2023-11-29 08:12:50 27 4
gpt4 key购买 nike

我想旋转 JXImagePanel。这应该是可能的 - 这是关于 JXImagePanel 的:

虽然 JLabelJButton 允许您轻松地将图像添加到您的 Swing 应用程序,JXImagePanel 使得向您的 Swing 应用程序添加任何 BufferedImageIcon 变得轻而易举。

如果可编辑,它还为用户提供了一种更改图像的方法。此外,JXImagePanel 提供了许多开箱即用的内置效果,包括平铺缩放旋转合成等。

但是,我不知道该怎么做。目前我的代码片段是:

bufferedImage = ImageIO.read(new File("image.png"));            
image = new ImageIcon(bufferedImage).getImage();
tempImage = image.getScaledInstance(100, 150, Image.SCALE_FAST);
this.deskJXImagePanel.setImage(tempImage);

现在我想将它旋转 0-360 度。如何实现?

最佳答案

JXImagePanel 已弃用(实际上,从 1.6.2 开始将包设为私有(private),因为它仍在内部使用),所以最好不要使用,很快就会被删除。

相反,使用带有 ImagePainter 的 JXPanel 和应用于画家的任意 transformOp,代码片段如下:

    JXPanel panel = new JXPanel();
ImagePainter image = new ImagePainter(myImage);
image.setFilters(
new AffineTransformOp(AffineTransform.getRotateInstance(-Math.PI * 2 / 8, 100, 100), null)
);
panel.setBackgroundPainter(image);

您可能需要玩一些才能获得您想要的确切效果。关于问题,您可能想尝试发布到 Swinglabs 论坛。

关于java - 如何旋转JXImagePanel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6993467/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com