在Google地图上打印大地图

时间:2009-12-22 15:25:59

标签: php javascript google-maps

我们有什么方法可以在谷歌地图上打印出包含所有图钉的大地图吗? EG:有大约300个引脚和感兴趣的地方,我们可以打印出大地图(4000 x 6000)PDF并使用A0打印机打印结果吗?

让我们说整个英国都适合A0页面,地图上有不同的引脚。

感谢。

3 个答案:

答案 0 :(得分:3)

我不知道这是否有帮助,但看看Google Maps API,您可以尝试这样的事情:

<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
  function initialize() {
    var latlng = new google.maps.LatLng(54,-3);
    var myOptions = {
      zoom: 9,
      center: latlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
  }

</script>
</head>
<body onload="initialize()">
  <div id="map_canvas" style="width:4000px; height:6000px"></div>
</body>
</html>

这里的关键是设置map_canvas的宽度和高度(以像素为单位),因此它们超出了浏览器窗口的大小。从这里开始,希望这是一个让你的打印设置正确打印整个图像的问题。

答案 1 :(得分:2)

Google Maps API不适用于高分辨率打印。另一方面,Google Earth Pro拥有高分辨率打印(水平像素高达4,800)作为主要功能之一。

您可能需要考虑使用KML才能在Google地图和Google地球上显示标记。以下文章可以帮助您入门:

以下是KML文档的示例:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
<Placemark>
  <name>New York City</name>
  <description>New York City</description>
  <Point>
    <coordinates>-74.006393,40.714172,0</coordinates>
  </Point>
</Placemark>
</kml>

答案 2 :(得分:0)

This可能会帮助您入门(它绘制了一张大地图)。

完成后,您可以使用Google Maps API在图钉上绘图。