cl991036
管理员
管理员
  • 注册日期2003-07-25
  • 发帖数5917
  • QQ14265545
  • 铜币29669枚
  • 威望217点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • GIS帝国铁杆
阅读:1288回复:0

图层标注(C#)

楼主#
更多 发布于:2008-09-09 09:40
      /// <summary><BR>        /// (重载)图层标注<BR>        /// </summary><BR>        /// <param name="pFeaturelayer">标注图层</param><BR>        /// <param name="sLableField">标注字段</param><BR>        /// <param name="pRGB">颜色</param><BR>        /// <param name="size">大小</param><BR>        public static void FunLabelFeatureLayer(IFeatureLayer pFeaturelayer, string sLableField, IRgbColor pRGB, int size)<BR>        {<BR>            if (pFeaturelayer == null)<BR>                return;<BR>            IGeoFeatureLayer pGeoFeaturelayer = (IGeoFeatureLayer)pFeaturelayer;<BR>            IAnnotateLayerPropertiesCollection pAnnoLayerPropsCollection;<BR>            pAnnoLayerPropsCollection = pGeoFeaturelayer.AnnotationProperties;<BR>            pAnnoLayerPropsCollection.Clear();<BR><BR>            //stdole.IFontDisp  pFont; //字体<BR>            ITextSymbol pTextSymbol;<BR><BR>            //pFont.Name = "新宋体";<BR>            //pFont.Size = 9;<BR>            if (pRGB == null)<BR>            {<BR>                pRGB = new RgbColorClass();<BR>                pRGB.Red = 0;<BR>                pRGB.Green = 0;<BR>                pRGB.Blue = 0;<BR>            }<BR><BR>            pTextSymbol = new TextSymbolClass();<BR>            pTextSymbol.Color = (IColor)pRGB;<BR>            pTextSymbol.Size = size;<BR><BR>            IBasicOverposterLayerProperties pBasicOverposterlayerProps = new BasicOverposterLayerPropertiesClass();<BR>            switch (pFeaturelayer.FeatureClass.ShapeType)<BR>            {<BR>                case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolygon:<BR>                    pBasicOverposterlayerProps.FeatureType = esriBasicOverposterFeatureType.esriOverposterPolygon;<BR>                    break;<BR>                case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPoint:<BR>                    pBasicOverposterlayerProps.FeatureType = esriBasicOverposterFeatureType.esriOverposterPoint;<BR>                    break;<BR>                case ESRI.ArcGIS.Geometry.esriGeometryType.esriGeometryPolyline:<BR>                    pBasicOverposterlayerProps.FeatureType = esriBasicOverposterFeatureType.esriOverposterPolyline;<BR>                    break;<BR>            }<BR><BR>            ILabelEngineLayerProperties pLabelEnginelayerProps = new LabelEngineLayerPropertiesClass();<BR>            pLabelEnginelayerProps.Expression = "[" + sLableField + "]";<BR>            pLabelEnginelayerProps.Symbol = pTextSymbol;<BR>            pLabelEnginelayerProps.BasicOverposterLayerProperties = pBasicOverposterlayerProps;<BR><BR>            pAnnoLayerPropsCollection.Add((IAnnotateLayerProperties)pLabelEnginelayerProps);<BR>            pGeoFeaturelayer.DisplayAnnotation = true;<BR>            //axMapControl1.ActiveView.PartialRefresh(esriViewDrawPhase.esriViewBackground, null, null);<BR>        }
喜欢0 评分0
没钱又丑,农村户口。头可断,发型一定不能乱。 邮箱:gisempire@qq.com
游客

返回顶部