Wrap Text
&& FUNCTION WrapWord
&& PARAMETERS _Word2Wrap,_LenWrap
&& Untuk warp text pada panjang tertentu
&& Fungsi ini memerlukan fungsi CutWordAt yang telah dibahas sebelumnya
FUNCTION WrapWord
PARAMETERS _Word2Wrap,_LenWrap
PRIVATE _Word2Wrap,_LenWrap,_MinLenWrap,_WrapKei,_SisaWrap,;
_BalikWrap,_Counter,_Word1
IF LEN(_Word2Wrap)<_LenWrap
RETURN _Word2Wrap
ENDIF
_MinLenWrap=0
FOR _WrapKei=1 TO JumKata(_Word2Wrap)
_TestLenWrap=LEN(KataKeX(_Word2Wrap,_WrapKei))
_MinLenWrap=MAX(_MinLenWrap,_TestLenWrap)
NEXT
&& GAGAL :
IF _LenWrap<_TestLenWrap && Jika nilai wrap yg diingin lebih kecil dari panjang max kata dalam kalimat
RETURN _Word2Wrap
ENDIF
_SisaWrap=_Word2Wrap
_BalikWrap=""
_Counter=1
DO WHILE LEN(_SisaWrap)>_LenWrap .and. _Counter<=LEN(_Word2Wrap)
_Word1=ALLTRIM(CutWordAt(_SisaWrap,_LenWrap))
IF EMPTY(_BalikWrap)
_BalikWrap=_Word1
ELSE
IF LEN(_Word1)>0
_BalikWrap=_BalikWrap+CHR(13)+_Word1
ENDIF
ENDIF
_SisaWrap=ALLTRIM(STRTRAN(_SisaWrap,_Word1,""))
_Counter=_Counter+1
ENDDO
IF LEN(_SisaWrap)>0
_BalikWrap=_BalikWrap+CHR(13)+_SisaWrap
ENDIF
RETURN _BalikWrap
0 komentar:
Posting Komentar