#长度的来源见附件中的html
_visable_width=0, 24, 24, 24, 24, 24, 24, 24, 24, 0, 0, 0, 0, 0, 24,
24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
12, 12, 16, 28, 28, 44, 32, 8, 16, 16, 20, 28, 12, 16, 12, 12, 28, 28,
28, 28, 28, 28, 28, 28, 28, 28, 12, 12, 28, 28, 28, 28, 48, 28, 32,
36, 36, 32, 28, 36, 36, 12, 24, 32, 28, 36, 36, 36, 32, 36, 36, 32,
28, 36, 28, 44, 28, 28, 28, 12, 12, 12, 20, 28, 16, 28, 28, 24, 28,
28, 12, 28, 28, 12, 12, 24, 12, 44, 28, 28, 28, 28, 16, 28, 12, 28,
20, 36, 20, 20, 20, 16, 12, 16, 28, 24
#中文长48
def visable_length(word):
length=len(word)
width=0
i=0
while i<length:
c=word[i]
if c>"\xE0" and c<="\xEF":
i+=3
width+=48
else:
if c<"\xC0":
i+=1
width+=_visable_width[ord(c)]
else:
width+=48
if c<="\xDF":i+=2
elif c<="\xF7":i+=4
elif c<="\xFB":i+=5
else:i+=6
return width
def visable_cut(word,limit,etc="..."):
i=0
length=len(word)
if length<=limit:return word
limit = limit*48
width = 0
while i<length:
c=word[i]
if c>"\xE0" and c<="\xEF":
offset=3
width+=48
else:
if c<"\xC0":
offset=1
width+=_visable_width[ord(c)]
else:
width+=48
if c<="\xDF":offset=2
elif c<="\xF7":offset=4
elif c<="\xFB":offset=5
else:offset=6
if width>limit:
etc_length=(48+visable_length(etc))/48
return word[:i-etc_length]+etc
else:
i+=offset
return word
分享到:
相关推荐
matlab不同窗函数截断信号及其频谱分析
php截断字符串优化函数 php截断字符串优化函数 php截断字符串优化函数
该代码给出了字符串截断的方法,对于输入的字符产,按照每行规定的个数输出,不够则补充0
此处,通过Schechter函数和Gamma概率密度函数来拟合恒星的发光度函数(LF)。 在低和高亮度区域中,恒星数量对距离的依赖性都要求在Schechter和Gamma LF中包括上下边界。 提供了三种恒星的天体物理应用:在低距离处...
上述两信号中,中心频率f0=30,采样频率fs=128,唯一差别仅是FFT的长。在N=128的谱图上只在30Hz处有一条谱线,其他频点的幅值都为0; 而在N=100的谱图上有明显的泄漏现象,谱线用红实线表示。图中用虚线和红圈点...
复制代码 代码如下://utf8格式下的中文字符截断//$sourcestr 是要处理的字符串//$cutlength 为截取的长度(即字数)//$addstr 超过长度时在尾处加上的字符function cut_str($sourcestr, $cutlength, $addstr=’…’){...
本文实例讲述了php源码分析之DZX1.5字符串截断函数cutstr用法。分享给大家供大家参考。具体分析如下: <?php /** * 函数来源DZX1.5,文件所在 /source/function/function_core.php */ define('CHARSET','UTF-8...
在使用ArcGIS10.2.1或10.2.2及10.3以上版本时,可能会出现中文字段名称被截断,不能超过3个汉字的问题。此工具可以自动识别arcgis版本并一键写入注册表,实现arcgis可以支持导出5个汉字的字段名的shp文件。
Angular Truncate Angular Truncate是实现Angularjs截断文本字符串的一组数字或词,在需要的时候添加过滤器。 可以根据不同情况去截断和控制字符串的长度
VC++截断字符长度,使多余部分缺省显示
浮点运算中,小数点后数据太多有时会导致计算溢出, 本人自编写了一个可任意截取小数点后n位的函数.程序简单实用. 程序中没有考虑负数的四舍五入. 如果需要作如下改动便可: if(f>0) { f = (long)(f+0.5); } else { f...
伽玛函数很好地近似了天体物理物体的光度函数,而截断的伽玛分布将允许进行更严格的分析。 本文研究了广义伽玛分布(GG),然后介绍了标度和新的双截断。 为了使星系或类星体的发光度函数(LF)拟合,采用具有比例的...
之前版本中HHT变换需要用到的函数
功能:•连续输入字符串,请按长度为8拆分每个字符串后输出到新的字符串数组; •长度不是8整数倍的字符串请在后面补数字0,空字符串不处理。 ''' def func_test(): ''' 补足固定长度倍数输出 ''' a=raw_input...
Function: mb_substr( $str, $start, $length, $encoding ) $str,需要截断的字符串 $start,截断开始处 $length,长度(注意,这个跟mb_strimwidth不同,1就代表一个中文字符) $encoding,编码,我设为 utf-8 例:...
Oracle常用字符串处理函数: 函数格式: LTRIM(string,[,'set']); RTRIM(string,[,'set']); 、string是数据库中类型为CHAR或VARCHAR2的列名(或常量串);... 如果没有字符,函数则缺省自动截断空格;