winson - 2008-2-11 12:14:00
相当简单的C#函数实现代码片断,按照最小行长度分行和断行(会超过最小行长度),曾用于自动给太长的Winform Tooltip断行。 û¨2nm{Ìbbs.szblogs.comfü¾§ü«ê
û¨2nm{Ìbbs.szblogs.comfü¾§ü«ê
[Codehighlighter] id=bbs.szblogs.com style='BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee'[Codeleft][Coderight][Codedv][Codeleft][Coderight]!--[Coderight][Codeb][Codeleft][Coderight][Codeb][Codeleft]Code highlighting produced by Actipro CodeHighlighter (freeware)[Coderight][Codeb][Codeleft]http://bbs.szblogs.com[Coderight][Codeb][Codeleft][Coderight][Codeb][Codeleft]--[Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]private[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]string[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] MultiplineString([Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]string[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] instr, [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]int[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] line_length)[Coderight][Codeb][Codeleft]{[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]string[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] remain [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]=[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] instr, multi_line[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]=[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]""[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft];[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]while[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft](remain.Length [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]>[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] line_length)[Coderight][Codeb][Codeleft] {[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]int[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] space_pos [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]=[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] remain.IndexOf([Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]'[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]'[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft], line_length);[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]if[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] (space_pos [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]==[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]-[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800080;"[Codeleft]1[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft])[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft][Codeb]eak[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft];[Coderight][Codeb][Codeleft] multi_line [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]+=[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] remain.Substring([Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800080;"[Codeleft]0[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft], space_pos) [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]+[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]"[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]\r\n[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800000;"[Codeleft]"[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft];[Coderight][Codeb][Codeleft] remain [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]=[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] remain.Substring(space_pos [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]+[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #800080;"[Codeleft]1[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]);[Coderight][Codeb][Codeleft] }[Coderight][Codeb][Codeleft] [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #0000FF;"[Codeleft]return[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] multi_line [Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft]+[Coderight]/[Codesp][Codeleft][Coderight][Codesp] style="color: #000000;"[Codeleft] remain;[Coderight][Codeb][Codeleft]}[Coderight]/[Codesp][Codeleft][Coderight]/[Codedv][Codeleft][/Codehighlighter]û¨2nm{Ìbbs.szblogs.comfü¾§ü«ê