原文发布时间:2010-06-16
作者:毛毛虫
本文主要说一些跟注记(显示文字)相关的转换器
TextAdder
设置要素的几何为text,以前面的几何位置作为现在的文本位置。该转换器的参数如下:
如图:是一个shape文件。
使用TextAdder转换器后:
LabelPointReplacer
使用一个注记点代替几何要素。转换器的参数如下:
效果与上图相同。
Labeller
沿着一个线性或多边形要素插入一个注记。
这个转换器跟上面两个转换器的区别就是可以设置多一些的属性,比如注记的位置,注记间的间距等,主要的不同是不能对点要素设置注记,对象必须是线或多边形。同时,根据这些设置输出的要素要会不同,生成的注记是围绕多边形或线的,所以输入与输入可能不是一一对应的:
TextLocationExtractor
在text的位置设置一个text要素的几何。
上图中文字是使用TextLocationExtractor转换器的输入图层,点是转换器TextLocationExtractor的输出效果。
TextPropertyExtractor
提取文本要素的属性。
TextPropertySetter
设置文本几何的文本属性,所有的参数都是可选的。
两外需要说明一下,_text_string、_rotation和_text_size这三个属性是显示文本需要的属性。
TextStroker
把输入的文本字串输出为一个文本轮廓组成的聚合类,也就是把文本转换为多边形组成的聚合类。
这幅图是文本图层,其中的注记的部分属性如下:
使用TextStroker转换器之后的图层显示为:
是汉字的话会出现这种情况,我做了一些测试,发现有两个设置可以把中文显示出来(英文不会出现这种情况):
点击Turetype Font Name参数后面的按钮,在出现的下面的对话框中:
在书写系统中选择简体中文或繁体中文,都选择第一个选项Arial Unicode MS。
输出后的要素的部分属性:
使用Deaggregator转换器后,会发现一个字可能会被分为几个多边形,根据字体本身的几何特征决定。