我正在开发使用折线拍摄谷歌地图快照的功能,并在折线上打开弹出窗口点击谷歌地图。带有折线的谷歌地图快照正在工作,但它无法在折线上拍摄快照打开弹出窗口。折线显示在 sanpshot 图片上,但信息窗口未显示。这是拍摄快照的代码。
此代码用于初始化 javascript onload 上的代码控件:
var snapShotControlOptions = { hidden: true };
snapShotControlOptions.buttonLabelHtml="<snap id='snap' style='display:none' >snap</span>"
snapShotControl = new SnapShotControl(snapShotControlOptions);
map.addControl(snapShotControl);
这是拍摄谷歌地图的sanp照片的方法。
function takeSnap() {
//static map size
var sizeStr = "640x640";
var imgSize = "";
if (sizeStr != "") {
var sizeArray = sizeStr.split("x");
imgSize = new GSize(sizeArray[0], sizeArray[1]);
}
snapShotControl.setMapSize(imgSize);
var format = "jpg";
snapShotControl.setFormat(format);
var url = snapShotControl.getImage();
// document.getElementById("snapshot_canvas").src = url;
SaveImage(url);
//
}
//this will add polyline overlay to draw line on google map with different color of polyline on google map .
var polyline = directionsArray[num].getPolyline();
polyline.setStrokeStyle({ color: streetColor, weight: 3, opacity: 0.7 });
polyline.ssColor=streetColor;
map.addOverlay(polyline);
///this code will open the pop info window on polyline those polyline created on google map
问题是当我拍摄谷歌地图的快照时,他们的这些弹出窗口不包含在 sanpshot 中。
var MousePoint = "";
var marker;
GEvent.addListener(map, "mousemove", function (point) {
MousePoint = new GLatLng(point.lat(), point.lng());
});
GEvent.addListener(polyline, "click", function () {
map.openInfoWindowHtml(MousePoint, headMarkerHtml);
});
GEvent.addListener(polyline, "mouseout", function () {
// map.closeInfoWindow();
});
你能告诉我谁通过折线叠加中的弹出窗口。
我已经使用 javascript 文件 snapshotcontrol.js 来拍摄快照。