8
我正在用Java中的Graphics2D進行實驗。但像往常一樣,我被卡住了。 :P問題是: 假設我有這樣的代碼,重置Java中的Graphics2D對象
Graphics2D g=(Graphics2D)(this.getGraphics()); //Inside a JFrame
g.rotate(Math.PI/8);
g.drawLine(10, 20, 65, 80);
//I want this one and all following lines to be drawn without any rotation
g.drawLine(120, 220, 625, 180);
是否有可能???我知道必須有某種方式,但我無法弄清楚。請幫忙。
此外,建議您使用圖形對象的副本,而不是圖形對象本身以避免破壞,因爲這將在其他地方使用。 – mre
你能解釋一下嗎?你是什麼意思的破壞? –
有時你已經有了一個'Graphics'對象,你想暫時改變它的一些狀態,然後將它返回到它的原始狀態。一種方法是創建一個新的'Graphics'對象,它是原始對象的副本,並對該副本進行更改。這種技術避免了破壞Swing其他部分可能依賴的原始對象的狀態。這可能不適用於這種情況,但我認爲它不會提及! :) – mre