在截屏之前,GMap.Net中的.ToImage()
函数似乎没有等待地图数据被下载。这将导致图像具有空白图块。是否有现有功能允许GMaps等待地图加载完毕?
我已经在GitHub上发布了问题,但到目前为止尚未得到答复。因此,我们将不胜感激。
VB.NET代码
Private Function TakeBitmapScreenShot() As Image
'''''''''''''''''''''''''''''''''''''''''
'Code to wait until all tiles have loaded
'''''''''''''''''''''''''''''''''''''''''
Return GMapControl.ToImage()
End Function
答案 0 :(得分:0)
避免这种情况的两种方法是使用TilePrefetcher或什至更好的code。
答案 1 :(得分:0)
您可以处理事件( OnTileLoadComplete ),该事件在切片图像完全加载时触发,然后可以截取屏幕截图
GMapControl1.OnTileLoadComplete += GMapControl1_OnTileLoadComplete;
private void GMapControl1_OnTileLoadComplete(long ElapsedMilliseconds)
{
GMapControl.ToImage();
}