Я использую этот код для создания текста в ArcMap. Но я не могу заставить его масштабироваться, как текст аннотации, когда вы увеличиваете масштаб.Есть ли способ получить графический текст для масштабирования в ArcMap?
Кто-нибудь знает, как это сделать?
//'First setup a color. We'll use RGB red
IRgbColor pRGBcolor = new RgbColor();
pRGBcolor.Blue = 0;
pRGBcolor.Red = 255;
pRGBcolor.Green = 0;
//'Next, cocreate a new TextElement
ITextElement pTextElement = new TextElementClass();
//'Query Interface (QI) to an IElement pointer and set
//'the geometry that was passed in
IElement pElement = pTextElement as IElement;
pElement.Geometry = Point;
//'Next, setup a font
stdole.IFontDisp pFontDisp = new stdole.StdFont() as stdole.IFontDisp;
pFontDisp.Name = "Arial";
pFontDisp.Bold = true;
//'Next, setup a TextSymbol that the TextElement will draw with
ITextSymbol pTextSymbol = new ESRI.ArcGIS.Display.TextSymbolClass();
pTextSymbol.Font = pFontDisp;
pTextSymbol.Color = pRGBcolor;
pTextSymbol.Size = Size;
pTextSymbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHACenter;
pTextSymbol.VerticalAlignment = esriTextVerticalAlignment.esriTVACenter;
pTextSymbol.Angle = Angle;
pTextSymbol.Text = Text;
//'set the size of the text symbol here, rather than on the font
//'Next, Give the TextSymbol and text string to the TextElement
pTextElement.Symbol = pTextSymbol;
pTextElement.Text = pTextSymbol.Text;
pTextElement.ScaleText = true;
ESRI.ArcGIS.Carto.IElementProperties3 aoElementPro = pTextElement as ESRI.ArcGIS.Carto.IElementProperties3;
aoElementPro.ReferenceScale = cGISHelpers.MapDomain.Map.MapScale;
Я строю инструмент для измерения размеров на посылках. Нам нужно сделать это очень легко для клиента, поэтому я пытаюсь использовать графический текст для размещения и установки размера текста, а затем инструмент сохранит его на уровне аннотации после того, как пользователь будет счастлив, где текст. –
Я разговаривал с нашим «парнем ГИС» (мой босс), и самое лучшее, что мы могли бы придумать, - это слой аннотации с ярлыками пакетов, а затем позволить вашему клиенту вручную перемещать метки внутри слоя аннотации. Таким образом, вы сохраняете изменения размера и размера текста, а также позволяете перемещать текст вокруг. –
"к слою аннотации" = "для создания слоя аннотации" –