Engine中如何更改textelement的大小?

engine中如何更改textelement的大小?
已邀请:

刘峥 - ArcGIS多面手

赞同来自: arcgis

【解决办法】:
设置ITextSymbol.Size是以point(1/72英寸)为单位,可以直接通过这个值指定textsymbol的大小。另外,不同字体的长宽比也不同,可以参考下c#的帮助如何获取字体属性: http://msdn.microsoft.com/en-u ... .aspx。如果想通过倍数比例来设定的话,可以通过ITextSymbo.GetTextSize先获取原textsymbol的大小,textsym.GetTextSize(this.axMapControl1.hWnd, trans, txtele.Text, out x, out y); 再进行计算,重新赋给该textsymbol。

参考代码:
IElement ele = grasele.SelectedElement(1);
ITextElement txtele = ele as ITextElement;
ITextSymbol tsymbol = new TextSymbolClass();
tsymbol = txtele.Symbol;
tsymbol.Size = 100;
txtele.Symbol = tsymbol;
graphicsContainer.UpdateElement(txtele as IElement);
actview.Refresh();

要回复问题请先登录注册