Zeilenumbruch in einem JTextPane nach einem vorgegebenen cm

Status
Nicht offen für weitere Antworten.

CelikBlek

Bekanntes Mitglied
hallo,

wie kann ich einen zeilenumbruch in einem JTextPane automatisch bsp. nach 10 cm erzeugen. deshalb in cm oder pixel und nicht char, weil die schrigtgröße unterschiedlich sein kann.
kann mir jemand helfen?
gruss
 
FontMetrics holen, stringWidth messen und mit maxPixel vergleichen:

Code:
  private void createLineFeeds( JTextPane x, int pixel ) {
     StringBuffer sb = new StringBuffer( x.getText( ));
     FontMetrics fm = x.getFontMetrics( x.getFont());
     int start=0;

     for ( int i = 0; i < sb.length(); i++ ) {
        int len = fm.stringWidth( sb.substring(start, i) );
        if ( len >= pixel ) {
          start = i - 1;
          sb.insert( start, "\n" );
        }
     }
     x.setText( sb.toString( ));
  }
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben