文字处理中,有大量关于位置(定位)的信息。大体来说有文档和视图两类。都叫位置,实际过程中就会糊涂。比如说一个叶视图,要描述在文档听位置(start/end),又要描述用户看到的位置感觉。为此,特别规定术语如下:
- 文档位置
文档位置:Position。此术语用于文档描述。标准简写为pos。
结构位置:比如描述一个叶视图结构的offset/start/end等。我们设定,这些位置都是相对于上级视图(即父视图)的位置。大体层次是:叶视图、行视图、段落视图、页视图/文档视图。如果有特殊情况,需要加FromLeaf/FromLine/FromPara/FramPage等。
- 视图位置
坐标:Coordinate,X,Y。此术语用于视图描述。标准简写为coord.
同样的,我们设定,这些位置都是相对于上级视图的。如果特殊情况,需要加FromLeaf/FromLine/FromPara/FramPage等。
- 关于文档位置的约定
关于文档位置的部分。比如叶视图的start/end,我们目前约定是闭区间:包含start,包含end。也就是说,如果只包含一个字符,那么start=end,长度为(end-start+1)。我们鼓励(或转向)使用start/length的描述。
- 关于视图位置的约定
我们约定为闭区间。比如绘制范围是(x,y),那么就是x/y所在的点都要绘制。长度为(y-x+1)。