【문제 설명】
Javame Graphics 클래스의 DrawString은 더 긴 문자열을 그리면 텍스트가 동일한 줄에 그려지고 화면을 초과하는 문자열이 잘립니다. 그려진 텍스트를 자동으로 랩핑하는 방법은 무엇입니까?
【분석】
드로 스트링은 자동 라인 랩핑을 구현할 수 없지만 텍스트 도면의 위치를 구현할 수 있습니다. 따라서 텍스트를 여러 하위 문자로 분할하고 하위 문자열을 그리는 것을 고려할 수 있습니다. 분할 전략은 다음과 같습니다.
1 NEWLINE 캐릭터를 만나면 분할하십시오.
2 문자열의 길이가 설정 길이 (보통 화면 너비)보다 클 경우 분할하십시오.
【단계】
1 문자열과 문자열 [] 객체를 정의합니다.
개인 문자열 정보; 개인 정보; 개인 정보 info_wrap [];
2 자동 문자열 랩핑 함수를 구현하십시오
StringDealMethod.java
com.token.util; import Javax.microedition.lcdui.font; 문자열 텍스트, FONT FT) {string [] vector thempr = int len = 0; 0; 랩 = true; widths = ft.charat (index1)+widths {break} ++; index1-1); (결과); return return} public static string [] split (string original, string separator) {new vector (); .. Orig inal = index+separator.length ()); result = new String [nodes .size ()]; .Elementat (루프);
3 스플릿 기능을 호출하여 문자열의 분할을 실현합니다.
int width = getWidth (); ft. font.getfont (font.face_proporal, font.size_large); , 라인 브레이크를 자동으로 인식 할 수있는 문자열을 그립니다.
4 문자열을 그립니다
int width = getWidth (); ft. font.getfont (font.face_proporal, font.size_large); , 라인 브레이크를 자동으로 인식 할 수있는 문자열을 그립니다.
도면 효과는 그림 1에 나와 있습니다.