0
我目前正在爲自定義谷歌地圖設置打印按鈕。我的最終目標是讓我的地圖在打印時調整大小爲800px x 800px,因此無論您的設備大小如何,地圖的可視區域都適合紙張。爲打印介質準備自定義谷歌地圖的大小調整/定位問題
這個調整大小的部分工作得很好,但是當試圖更新地圖時它只在打印窗口被觸發後才改變。我是否在地圖上缺少必要的刷新,或者有什麼明顯的東西我只是沒有看到。
在此先感謝!
Broken Code;
function center_print() {
var lastPos = map.getCenter();
document.getElementById("map-canvas").style.height = "800px";
document.getElementById("map-canvas").style.width = "800px";
map.setCenter(lastPos);
window.print();
document.getElementById("map-canvas").style.height = "";
document.getElementById("map-canvas").style.width = "";
map.setCenter(lastPos);
}
最終解決方案;
//Used for centering the map on print
function center_map(size) {
lastPos = map.getCenter();
if (lastPos != null) {
document.getElementById("map-canvas").style.height = size + "px";
document.getElementById("map-canvas").style.width = size + "px";
google.maps.event.trigger(map, 'resize');
map.setCenter(lastPos);
return true;
}
else {
return false;
}
}
function print_map() {
if (center_map(800)) {
window.setTimeout(window.print, 1000);
document.getElementById("map-canvas").style.height = "";
document.getElementById("map-canvas").style.width = "";
}
}
您使用的是商業授權? AFAIK打印貼有自定義標記的貼圖被許可協議禁止。 – Swires
這件作品沒有標記。只是試圖找到調整大小的地圖中心。 – t3muis