/**
* 分割行
*
* @param src,width,height
* @date
* @return static String[]
* @autor
*/
public static String[] split(String src, int width, int height)
{
Vector vector = new Vector(20);
String buffer = "";
int bufferWidth = 0;
int maxBufferWidth = 0;
for (int i = 0; i < src.length(); i++)
{
// 如果遇到换行时
if (src.charAt(i) == ' ')
{
vector.addElement(buffer);
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
buffer = "";
}
else
{
buffer += src.charAt(i);
// 计算buffer的宽度
bufferWidth = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_SMALL).stringWidth(buffer);
// 如果buffer的宽度大于显示区域的宽
if (bufferWidth > width)
{
vector.addElement(buffer.substring(0, buffer.length() - 1));
bufferWidth = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_SMALL).stringWidth(
buffer.substring(0, buffer.length() - 1));
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
buffer = "";
i--;
}
else if (i == src.length() - 1)
{
vector.addElement(buffer);
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
}
}
}
// 获取数量
String[] text = new String[vector.size()];
// 将数组循环赋值
for (int i = 0; i < vector.size(); i++)
{
text[i] = (String) vector.elementAt(i);
}
return text;
}
* 分割行
*
* @param src,width,height
* @date
* @return static String[]
* @autor
*/
public static String[] split(String src, int width, int height)
{
Vector vector = new Vector(20);
String buffer = "";
int bufferWidth = 0;
int maxBufferWidth = 0;
for (int i = 0; i < src.length(); i++)
{
// 如果遇到换行时
if (src.charAt(i) == ' ')
{
vector.addElement(buffer);
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
buffer = "";
}
else
{
buffer += src.charAt(i);
// 计算buffer的宽度
bufferWidth = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_SMALL).stringWidth(buffer);
// 如果buffer的宽度大于显示区域的宽
if (bufferWidth > width)
{
vector.addElement(buffer.substring(0, buffer.length() - 1));
bufferWidth = Font.getFont(Font.FACE_PROPORTIONAL,
Font.STYLE_PLAIN, Font.SIZE_SMALL).stringWidth(
buffer.substring(0, buffer.length() - 1));
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
buffer = "";
i--;
}
else if (i == src.length() - 1)
{
vector.addElement(buffer);
maxBufferWidth = Math.max(maxBufferWidth, bufferWidth);
}
}
}
// 获取数量
String[] text = new String[vector.size()];
// 将数组循环赋值
for (int i = 0; i < vector.size(); i++)
{
text[i] = (String) vector.elementAt(i);
}
return text;
}