LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1096|回复: 1

三论笔划(转载)

[复制链接]
发表于 2003-9-7 06:35:19 | 显示全部楼层 |阅读模式
三论汉字笔画



一、      引言

    在计算机上,敲击26个字母键,即可组出任何英文单词。但要进行中文处理,必须另有一套编码系统,敲进特定的输入码(外码),都要由计算计转成内码。由此内码在庞大的字库内找到汉字字模,再显示方块字。只要是以这种方式使汉字植根于电脑的,该电脑就不可能是真正的汉字计算机。实际上,与英文字母相当的是汉字笔画。笔画种类也只有30种左右,让它们一一对应一个按键,只要敲击键盘,也可由笔画组出所有汉字。这样就不会有输不进去的汉字,万一遇到不认识到汉字,我们可以用键盘依样画葫芦地把它写出来。这种由笔画组字的方式,是汉字植根于电脑的唯一正确方向。

    但是国家和计算机界并没有意识到这个正确方向,更没有人去研究。他们一直忙于为2万、5万、10万汉字编定内码。可惜这样做也不能安排全部汉字,反而封杀了汉字的发展。针对每一套字库编码标准,大家又忙于为它编输入码。结果是万码奔腾,可惜也不能做到不重码。全世界计算机学者,也没有找到正确的方法,解决所有语言文字的编码问题。字符的交换信息码,由一个字节到二个字节直增到四个字节。即使硬件的飞速进步允许您这么干,但也不能一劳永逸地解决问题,因为文字本身是发展的。可以说是无限的。我想总有一天,大家要扭转方向另求解决途经的。

    我现在正着手解决汉字笔画组字问题。为此必须研究汉字笔画。可惜这个领域里的资料很少。我反覆呼吁国家要有一个标准笔画库,可能认为这个太简单,或者没有必要,所以至今还没有。我曾两次讨论笔画,(第一篇《论汉字笔画》,第二篇《汉字笔画统计特征》,可在我的网站上找到)本文是第三次。其目标都是为解决在计算机上由笔画组字服务的。

二、      笔画线段和方向

    汉字端直方正,没有圆弧形笔画(我在网上几次提出汉字为什么没有圆圈和弧形笔画这个问题,但至今没有得到很好的答案),那就是说汉字都是由直线线段组成的。与繁多的汉字比较起来,笔画种类简单、种类少。由于过去不重视研究,资料更少。最先研究汉字笔画的,应当是书法家。但书法家主要着重于起笔、落笔的笔锋及笔画转折时的运笔方法和形态。而这一切都是随字体而变,不同字体的形态差别很大,也只是区别字体的特征,而不是区别汉字本身的特征。在汉字教学上论及的笔画,应是我们关心的主要部分。在这方面,不同的作者也有不同归属和名称,我在“论汉字笔画”中已列表举例。对我们关系更大的可能是近年来为了汉字编码需要所作的归纳,一般只分作:横、竖、点、撇、捺五种,还有一种折,包括所有转折的笔画。有人按折的方向——顺时针还是逆时针——区别为顺折、逆折。戚桐钦还把点分为纵点和横点,这样刚好凑成8种,符合他的中易八卦系统。实际上为了编码时分散码子,减少了重码,应尽量使各种笔画出现的频率均匀些。为此我曾建议把出现频率最高的横,按它与其他笔画交错否,区分为孤立横和交横。

因为没有长度宽度、近于几何意义的点是没有的,许多人把点看成是短捺和短竖(竖点),这样最简单原始的汉字笔画只有4种:横、竖、撇、捺。这4种不同方向的直线线段,正好组成练字用的“米”字格。有人就用这4种米字格小线段,生成所有方块字。确实没有一个汉字,不能套到米字格上的,意即所有笔画都是由这四种线段组成的,它们是汉字的骨骼。

写汉字先上后下,先左后右,运笔的正方向也是由上到下,由左向右。4种直线线段中,横、竖及捺的运笔方向总是正的,但成 45度角的斜线,不管是撇和挑,总有一个方向是逆向的:“撇”由右向左,“挑”从下向上。不过这两种笔画一般是不长的。其他产生逆向运笔的,都发生在笔画的最末线段中,那都是较短的钩:如横向下钩、横向上钩、竖向右钩,而在竖向左钩中,两个方向都是逆向的:由右向左、且从下向上。

三、      笔画

   上面所说笔画线段,按笔顺,能够首尾相接的,就连成一个笔画。写了一个笔画线段后,下一步必须由原来的起笔处或别的地方起笔的,就只得分成两笔。一个笔画线段孤立成笔的笔画就叫竖、横、撇、捺。其他笔画都是由2个以上线段相连而成,最多可有5个线段,如“乙”以及“乃”的折笔。笔画线段相接处,在一般字体中都有特殊的形态。运笔至此,常要“顿笔”,再改变方向。个别交接处平稳过渡,形成圆弧形状,如“乙”字的第2、3个转折点。但他们不是特征所在,把它写成折线形,也不影响整个汉字的性质。所以我们一般都把笔画看作是折线。折线的角度,也不一定要是45度的倍数。

取5个线段,每个线段可任取4种中的一种,共有4^5=1024,再加上4个、3个、2个、1个线段,共有1024+256+64+16+4=1364种组合。因为我们区分4种线段,只按它的方向不同而不管其长短,所以,仅第一次有4种选择,以后就只能选择3种了。另一种与原方向相同,只使原先线段地延长而已,不能算。这样,所有可能的组合降为4*(3^4+3^3+3^2+3+1)=484种。实际上,这484种中还有许多是不成为笔画的。例如:“撇”顺接“竖”习惯上仍算作两笔,“捺”后连着短横,仍算作一笔“捺”,“捺”连着“撇”不是汉字笔画等等……。实际上不同的笔画只有40——50种,不同的人会有不同的看法。我现在则取50种笔画,如下表所示。表中每一种笔画用一个字母代表,同一字母的大、小写两种字母所代表的笔画,常常也是同一种笔画,仅在大小长短上有些差别。为了组出较好看的汉字,可能要分别选用其中的一种。但是如果互相代替,字形可能变的不美观,但一般不会变为不同的汉字。这样,实际上只能算25种笔画。(因为笔画概念,少用、少研究,也没有国家文字标准,我这里采用的和我第一篇《论汉字笔画》中列到的就有出入,以后可能还有变化。)

代表字母
       

形 态
       

名 称
       

字 例
       


       

代表字母
       

形 态
       

  名 称
       

字 例

    a
       


       

   点
       

“文”字首笔
       


       

    A
       


       

  长点
       

“冖”之首笔

    b
       


       

   横
       

      一
       


       

    B
       


       

  短横
       

“工”字首笔

    c
       


       

   竖
       

“上”字首笔
       


       

    C
       


       

  短竖
       

“刂”之首笔

    d
       


       

   撇
       

“义”字首笔
       


       

    D
       

丿
       

  竖撇
       

“川”字首笔

    e
       


       

   捺
       

“文”字末笔
       


       

    E
       


       

  平捺
       

“辶”之末笔

f
       

?^
       

  横钩
       

“买”字首笔
       


       

    F
       


       


       

“今”字末笔

    g
       

?|
       

  左钩
       

“刂”之末笔
       


       

    G
       


       


       



    h
       


       

  右钩
       

“氏”字第二笔
       


       

    H
       


       

  竖提
       

“以”字首笔

    i
       


       

  斜钩
       

“弋”字第二笔
       


       

    I
       


       

  心钩
       

“心”字第二笔

    j
       


       

   提
       

“⺪”之末笔
       


       

    J
       


       

   挑
       

“扌”之末笔

    k
       


       

  言挑
       

“讠”之末笔
       


       

    K
       


       

  凹折
       

“凹”字第二笔

    l
       


       

横折钩
       

“同”字第二笔
       


       

    L
       


       

  横折
       

“夬”字首笔

    m
       


       

  万钩
       

“万”字第二笔
       


       

    M
       


       

  横弯
       

“书”字首笔

    n
       


       

  马钩
       

“马”字第二笔
       


       

    N
       


       

  鼎折
       

“鼎”左下首笔

    o
       


       

  乃钩
       

“乃”字末笔
       


       

    O
       


       

   凸
       

“凸”字倒二笔

    p
       


       

  专折
       

“专”字倒二笔
       


       

    P
       


       


       



    q
       


       

  竖折
       

“区”字末笔
       


       

    Q
       


       

  竖弯
       

“疑”字首笔

    r
       


       

  撇折
       

“矣”字首笔
       


       

    R
       


       

撇横
       

“糸”字第二笔

    s
       


       

  又折
       

“又”字首笔
       


       

    S
       


       

  久折
       

“久”字第二笔

    t
       


       

  走之
       

“辶”之第二笔
       


       

    T
       


       

  建折
       

“建”字第二笔

    u
       


       

  耳钩
       

“阝”之首笔
       


       

    U
       


       

硬耳钩
       

“卩”之首笔

    v
       


       

  撇捺
       

“女”字首笔
       


       

    V
       


       

  撇点
       

“巢”字首笔

    w
       

⺄
       

  风钩
       

“风”字第二笔
       


       

    W
       


       

  乙钩
       



    x
       

?]
       

  儿钩
       

“儿”字末笔
       


       

    X
       


       

  几钩
       

“几”字末笔

    y
       


       

  弯钩
       

“狗”字第二笔
       


       

    Y
       


       

  子钩
       

“子”第二笔









四、      笔画组间的结构

    由笔画到汉字,这中间还有一个环节,其称呼很乱,可以叫做偏旁、部首、部件、字根、独体字等等,而我宁愿叫它为笔画组。下一节我还引进一个名词“子字”。称为子字,是为了统一考察他们内部的笔画结构。考虑整个汉字的结构时,还是称为笔画组为好。两者有一点区别:把两个笔画组放在一起,仍可作为一个笔画组,可以讨论这个联合组在汉字中的关系。子字则要满足下一节所述的笔画结构关系,把两个子字放在一起,不一定能成为一个满足笔画结构关系的子字。这就是说子字一定可看作笔画组而笔画组不一定可看作子字。

为了使整个汉字显得紧凑和谐,一个笔画组的笔画可以和别的笔画组相互穿插。但不能相交,也就是说笔画组必须是能够独立拆分出来的。这些可拆分的部分(字根)与别的部分常有固定的相互关系,我曾利用这种关系来进行字根组字。这些关系有两类:

一、        并列结构:  1、上下结构(包括上中下结构),如“要、喜”等字。

             2、左右结构(包括左中右结构),如“沽、湖”等字。

二、        包围结构:  1、左上包围右下方,先写左上部包围者,如“居、广”等字,没有右下方包围左上方的相反结构。

2、右上包围左下方,先写右上部包围者,如“司、氯”等字。

3、左下包围右上方,先写右上部,包围部分后写,如“这、建”,它们与上一类适相反。

4、左上右三方包围,先写包围者,如“同、风”等。

5、左下右三方包围,包围部分后写,如“幽、函”等。

6、上左下三方包围,先写上右部分,用左下部笔画最后封笔,如“区、臣”。

7、全包围,先写左、上、右部分,用最下面的笔画封笔,如“国、囚”。

我们知道,平常所说的偏旁部首,都基本上有一个固定的组字结构特征。如“氵”一定是左右结构,“艹” 一定是上下结构;它们后面的部件,分别写在它们的右面或下面。不是偏旁、部首的其他所有部件,即使是可以左右结构,也可上下结构的,也必有一种是主要的。我们就规定所有部件属于这主要的结构特性,万一它要用另一种特性组字时,只要附加一个指定的结构码就可以了。具有包围结构特性的部件不多,改变组字特性的可能性很少,只要分别规定它们之后的部件应写在哪一个特定位置就可以了。这样,只要有部件(或笔画组)的线性序列,就可自动组出有一定平面结构的汉字来。

五、      单体子字的笔画结构特性

我也曾希望各种笔画之间,也具有(像上面所述的部件之间的)相对固定的结构特性,可以用来把线性排列的笔画组成平面结构的汉字。但是除了“横”及“横钩”(“冖” 的第二笔)有固定的上下结构(它们自己几乎不够成左右结构)、“竖”及“竖撇”之间也有固定的左右结构外,其他大部分笔画甚至没有偏向于某种结构的特性,而且笔画与笔画还常常相交,更加复杂。就是有固定结构特性的“横”和“竖”,当它们混在一起时,既不能确定它们是上下还是左右结构,更不能确定它们相交与否,相交在那一部位了。至于包围结构,倒有“横折弯钩”(“司”字首笔)这一笔画,仍有右上包围左下方的特性。“竖横折”(“区”字末笔)虽有左下包围右上方的特性,但它与部首“辶”一样,是在写了被包围之后才写的。在PC1500无字库组字软件中,我是改变了笔顺,特别将部首“辶”最后写改为最先写才利用其组字特性的,这破坏了自然笔顺,代价太大了。不过我还是保留并利用了“横折弯钩”的包围特性。实际上是利用它先写右边,再写左边的特性。凡是按笔顺要先写右边再在其左边写另一笔的,如“丬”要先写竖笔,就可把两点(冫)作为“竖”的左方的被包围对象。

这样看来,笔画本身没有什么结构特性可以利用,只有附加结构码这一办法了。因为笔画“横”使用频率最高,所以上下结构不必标记,只要标记左右结构的笔画就行了。实际上,我是用各种括号来标记结构码的,例如放在方括号内的笔画就是左右结构的。

最后,我采用了以下“层”的概念来分析并组织子字中的笔画关系,并用来自动组成汉字:

1、                  所谓“子字”是汉字的一部分,它是由笔画组成的。虽然子字还可嵌套子字,但它包含的子字部分是被看作一个笔画的,只考虑这个特殊笔画的一定的高度和宽度,而不理会其实际形态。

2、                  一个“横”笔,构成一个层,并把它的厚度作为高度的单位,即横的高度为1。在一个子字中,“横”的宽度和所有层的宽度是一样的,从同一个左端开始到同一个右端结束。但笔画不一定填满一层的空间,这就是说:一个横笔,可以缩进(但不能伸出一定宽度之外)。

3、                  互相成左右结构的笔画(在一个方括号内的所有笔画)组成一个层。水平方向的宽度则以“竖”的宽度作为单位,像高度以“横”的厚度作单位一样。除了“竖”的宽度为 1。“横”的高度为 1外,其他笔画的高和宽还可以取 2 和 3(不需要更多的等级,必要时可自动延伸)。

4、                   像子字各层的宽度必须相同一样,一个层的高度也是相同的。即使在一个左右结构的层是由不同的笔画组成的,也有同样高度,其高度数值由其中的最大值确定,同样不要求所有笔画都画满整个高度。

5、                   一个左右结构层中的个别笔画或者整个层的全部笔画,可以提升到一定高度,而与上部层中的笔画相交。但作为一层的底部,仍固定在原来的水平上。任何笔画不能向还没有开始写的下面延伸。

按照这个层的概念,只要用括号(方括号表示左右结构,其他括号则表示嵌套的子字)和 9个阿拉伯数字(表示笔画的升缩),就可把笔画安排在任意的位置而组出所需的字形来。



                      陕西省气象局  张时钊2003.8.23
 楼主| 发表于 2003-9-7 06:41:16 | 显示全部楼层

这个贴子有点问题,还是看附件吧。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表