创建AE气泡提示

public IBalloonCallout createBalloonCallout(double x, double y)
{
IRgbColor rgb = new RgbColorClass();
{
rgb.Red = 255;
rgb.Green = 255;
rgb.Blue = 200;

}
ISimpleFillSymbol sfs = new SimpleFillSymbolClass();
{
sfs.Color = rgb;
sfs.Style = esriSimpleFillStyle.esriSFSSolid;
}

IPoint p = new PointClass();
{
p.PutCoords(x, y);
}

IBalloonCallout bc = new BalloonCalloutClass();
{
bc.Style = esriBalloonCalloutStyle.esriBCSRoundedRectangle;
//
bc.Symbol = sfs;
//
bc.LeaderTolerance = 20;
//1

bc.AnchorPoint = p;
}

return bc;
}


public ITextElement createTextElement(double x, double y, string text)
{
IBalloonCallout bc = createBalloonCallout(x, y);

IRgbColor rgb = new RgbColorClass();
{
rgb.Red = 255;
rgb.Green = 55;
rgb.Blue = 200;
}
ITextSymbol ts = new TextSymbolClass();
{
ts.Color = rgb;
}

IFormattedTextSymbol fts = ts as IFormattedTextSymbol;
{
fts.Background = bc as ITextBackground;
}
//fts.Size = 8;
ts.Size = 12;
ts.RightToLeft = false;
ts.HorizontalAlignment = esriTextHorizontalAlignment.esriTHALeft;

IPoint point = new PointClass();
{
double width = axMapControl1.Extent.Width / 15;
double height = axMapControl1.Extent.Height / 5;
point.PutCoords(x + width, y + height);
}

// ESRI .ArcGIS .Carto .ITEXT
ITextElement te = new TextElementClass();
//IMarkerElement me = new MarkerElementClass();
{
te.Symbol = ts;
//ts.Text = text;
te.Text = text;

// te.Symbol.HorizontalAlignment = esriTextHorizontalAlignment.esriTHAFull ;
te.Symbol.VerticalAlignment = esriTextVerticalAlignment.esriTVATop;
}

IElement e = te as IElement;
{
e.Geometry = point;
}
return te;

}

转载于:https://www.cnblogs.com/pennygiser/archive/2012/05/16/2503432.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值