All pastes #393703 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-03-13 19:48 UTC
rendered paste body
void drawWrappedString( Font f, String text, int x, int y, int maxWidth ) {
        Vector lines = new Vector();
        while(text.length() > 0) {
                String aLine = text;
                while(f.getWidth(aLine) > maxWidth) {
                        int rSpace = aLine.lastIndexOf(" ");
                        if( rSpace == -1 ) {
                                break;
                        } 
                        aLine = aLine.substring( 0, rSpace );
                } 
                lines.add( aLine );
                text = text.substring( aLine.length() ).trim();
        }
        int numLines = lines.size();
        int startY = y ;
        int height = f.getHeight(" ");
        for( int i = 0; i < numLines; i++ ) {
                String line = (String)lines.elementAt( i );
                float width = f.getWidth(line);
                float thisLineX = x;
                int yoff = (f instanceof AngelCodeFont) ? ((AngelCodeFont)f).getYOffset(line) : 0;
                f.drawString(thisLineX,startY + (i * height-yoff),line);
        }
    }