2010-03-26 93 views
1

我正在旋轉加載的圖像。我將圖形設置在JPanel上,然後使用標準的AffineTransform來旋轉它,例如45度。 不幸的是,如果圖像超出了面板區域,圖像正在被切割。 我該如何強制JPanel向自己添加滾動條(加載圖像文件時,我想通過添加滾動條來調整JPanel的大小,而不調整JFrame的大小)。如何在JPanel中正確旋轉圖像(Java)

或換句話說,如何正確旋轉整個圖像?

非常感謝您的回覆!

+0

http://www.cs.cf.ac.uk/Dave/HCI/HCI_Handout_CALLER/node63.html – Enrique 2010-03-26 20:08:06

+0

如果您想要「動態調整」框架的大小,那麼這裏有一個很好的幾何問題。 – Roman 2010-03-26 20:10:23

回答

1

您需要將面板放入jscrollPane中,然後確保正確設置了首選大小,以便滾動可用。

0

嗯,我建議你不要在面板的paintComponent()方法中旋轉圖像,因爲這會導致面板的首選大小發生變化,並且你不應該在paintComponent中設置首選大小() 方法。

相反,你應該有一個旋轉(...)方法。此方法將創建所需旋轉的BufferedImage。然後你的paintComponent()方法只是繪製緩衝圖像。然後,您將根據旋轉設置首選大小。

現在關於旋轉圖像的首選尺寸檢查了這個example