http://www.gissky.net- GIS空间站

我要投稿 投稿指南 RSS订阅 网站资讯通告:
搜索: 您现在的位置: GIS空间站 >> 技术专栏 >> ArcGIS >> ArcObjects开发 >> 正文

ArcObjects:简单的标注功能

作者:峰哥    文章来源:SINA博客    点击数:    更新时间:2007-10-23
摘要:

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

Tags:标注  
责任编辑:gissky
相关文章列表
ArcObjects:添加图例代码
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 中国地图