ybz64
路人甲
路人甲
  • 注册日期2003-08-06
  • 发帖数128
  • QQ
  • 铜币213枚
  • 威望0点
  • 贡献值0点
  • 银元0个
阅读:2082回复:2

标注的方式

楼主#
更多 发布于:2003-11-19 21:35
*** 标注的方式有以下几种:
自动标注。Map1.Layers("label").AutoLabel = True
删除时: Map1.Layers("label").AutoLabel = False
2. 用户自定义标注。鼠标点击方式:Map1.CurrentTool = miLabelTool
输入坐标方式:LabelAtPoint (x, y)
删除时: Map1.Layers("label").ClearCustomLabels
但是,鼠标点击位置以及(x,y)坐标值需要在点上,线上,面上。
3. 在drawuserlayer上自己画。
注意:
1.通过LabelProperties可以定义作标注的字段以及标注样式。
但是要注意首先要将图层加入到Datasets中。使用程序如下:
 
Dim DS As Dataset
Dim Temp As MapXLib.Field
Dim lbp As MapXLib.LabelProperties
Dim lyr As MapXLib.Layer
Set lyr=map1.layers.item(1)
Set DS = Map1.Datasets.Add(6,lyr)
Set lbp = DS.Layer.LabelProperties
Set lbp.Dataset = DS
Set Temp = DS.Fields("GEOname") '设置标注字段
Set lbp.DataField = Temp
lbp.Visible = True
lbp.Position = miPositionBC
lbp.Overlap = True
lbp.Offset = 5
lbp.LineType = 2
Map1.Layers("label").AutoLabel = True
2.用Dataset对象的AddField方法来创建用于标注的表达式。
3.注意Layer.DrawLayerAfter的使用。
喜欢0 评分0
echo2003
点子王
点子王
  • 注册日期2003-07-28
  • 发帖数2453
  • QQ76947571
  • 铜币5473枚
  • 威望1点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
1楼#
发布于:2003-11-21 12:17
UP!
举报 回复(0) 喜欢(0)     评分
bynine
路人甲
路人甲
  • 注册日期2006-05-18
  • 发帖数12
  • QQ
  • 铜币139枚
  • 威望0点
  • 贡献值0点
  • 银元0个
2楼#
发布于:2006-10-23 16:43
怎么样在程序里修改标注的字体类型和大小呢?我用Delphi,用Style.TextFont怎么也改不了。
举报 回复(0) 喜欢(0)     评分
游客

返回顶部