this.xPositions = xPositions; this.widths = widths; this.completeWidth = completeWidth;
this.indeces = indeces; this.actualCharacterWidths = characterWidths; this.spaceIndex = spaceIndex; this.lineWidths = new short[ 20 ]; this.originalLineIndeces = new short[ 20 ]; this.verticalPadding = verticalPadding; this.xPositions = new short[ indeces.length ]; this.usedCharactersWidths = new byte[ indeces.length ]; short currentLineWidth = 0; short maxLineWidth = 0; short linesIndex = 0; for (int i = 0; i < indeces.length; i++) { int index = indeces[i];  if (index == -1) {  } else if (index == ABSOLUTE_LINE_BREAK) {  if (currentLineWidth > maxLineWidth) { maxLineWidth = currentLineWidth; } this.originalLineIndeces[ linesIndex ] = (short) i; this.lineWidths[ linesIndex ] = currentLineWidth; currentLineWidth = 0;  this.usedCharactersWidths[i] = ABSOLUTE_LINE_BREAK; linesIndex++; } else {  this.xPositions[i] = xPositions[ index ]; byte characterWidth = characterWidths[ index ]; this.usedCharactersWidths[i] = characterWidth; currentLineWidth += characterWidth; } } this.numberOfLines = linesIndex + 1; this.height = this.numberOfLines * (fontHeight + verticalPadding) - verticalPadding; this.width = maxLineWidth;
	public BitMapFontViewer(Image image, short[] xPositions, byte[] widths, int completeWidth, int fontHeight) {		this.image = image;		this.xPositions = xPositions;		this.widths = widths;		this.completeWidth = completeWidth;		this.fontHeight = fontHeight;	}