2011-09-19 61 views
2

我想縮放JTextPane以進行內聯文本編輯。用戶可以縮放/平移文本並雙擊JLabel進行編輯。編輯器應縮放到當前縮放級別。可縮放可編輯JTextPane

我擴展了JTextPane,並通過縮放組件圖形進行繪製。但是,編輯不能以不同於1的比例工作。

如何縮放可編輯的JTextPane?

任何解決方案/指針都會有所幫助。提前致謝。

我沒有找到相關的question有用。

以下僅按比例縮放不同比例的組件和塗料。但是編輯不會縮放。

public class ScaledJTextPane extends JTextPane { 

     private double scale = 0; 

     public ScaledJTextPane() { 
     this.scale = 1; 
     } 

     protected void paintComponent(Graphics g) { 
     Graphics2D g2 = null;   
     g2 = (Graphics2D) g; 
     g2.scale(this.scale, this.scale); 

     super.paintComponent(g2); 
     } 

     public double getScale() { 
     return this.scale; 
     } 

     public boolean setScale(double xscale) { 
     boolean status = true;   
     status = (xscale != 0.0 && xscale != Float.NaN); 
     if (status) this.scale = xscale; 

     return status; 
     }  
    } 
+2

你是怎麼發現的,請張貼在這裏(編輯您的帖子)rellated代碼顯示了......請http://sscce.org/,可能是微不足道的錯誤 – mKorbel

+0

我的問題臉部是完全相同的[鏈接](http://coding.derkeiler.com/Archive/Java/comp.lang.java.gui/2004-08/0449.html) – 18bytes

回答