×
您的位置: 首页 > 编程笔记

ArcObjects:简单的标注功能

AR 时间:2010-12-26  查看:249   收藏
摘要:

Private Sub Anno(ByVal pGeoFeatlyr As IGeoFeatureLayer, ByVal field As String)
Dim pAnnoProps As IAnnotateLayerPropertiesCollection
pAnnoProps = pGeoFeatlyr.AnnotationProperties
pAnnoProps.Clear()

Dim pAnnoLayerProps As IAnnotateLayerProperties
Dim pPosition As ILineLabelPosition
Dim pPlacement As ILineLabelPlacementPriorities
Dim pBasic As IBasicOverposterLayerProperties
Dim pLabelEngine As ILabelEngineLayerProperties

Dim pTextSym As ITextSymbol
pTextSym = New TextSymbol
Dim pFont As stdole.StdFont
pFont = New stdole.StdFont
pFont.Name = strFontName
pFont.Size = iFontSize
pTextSym.Font = pFont
Dim pSymColor As IRgbColor
pSymColor = New RgbColor
pSymColor.Red = pColor.R
pSymColor.Green = pColor.G
pSymColor.Blue = pColor.B
pTextSym.Color = pSymColor

pPosition = New LineLabelPosition
pPosition.Parallel = False
pPosition.Perpendicular = True

pPlacement = New LineLabelPlacementPriorities
pBasic = New BasicOverposterLayerProperties
pBasic.FeatureType = esriBasicOverposterFeatureType.esriOverposterPolyline
pBasic.LineLabelPlacementPriorities = pPlacement
pBasic.LineLabelPosition = pPosition

pLabelEngine = New LabelEngineLayerProperties
pLabelEngine.Symbol = pTextSym
pLabelEngine.BasicOverposterLayerProperties = pBasic

pLabelEngine.Expression = field
pAnnoLayerProps = pLabelEngine

pAnnoProps.Add(pAnnoLayerProps)
pGeoFeatlyr.DisplayAnnotation = True

frmMain.AxMapCtl.Refresh()
End Sub

 

0% (0)
0% (0)