我使用的是Rotate Map Leaflet插件,尝试使用jsPDF插件打印时遇到以下问题:
地图不停留在div容器内。它涵盖了整个PDF文档。似乎也对地图图块有些奇怪。
这是它的外观:
如果我使用jsPDF打印,则PDF看起来像:
如果未旋转,则在PDF中如下所示:
无论如何,地图不会停留在我想要的范围之内。
答案 0 :(得分:0)
我使用Javascript的localStorage.setItem()函数传递div的innerHTML,其中包含地图和其他要打印的信息。
在另一页上,我使用Javascript的localStorage.getItem()检索了上一页的HTML,并将其添加到了新页上的现有div上。我还向LeafletR.js添加了CSS链接和脚本调用。
我在上一页中使用了相同的代码来设置地图:
map = L.map('map',
{
' renderer': L.canvas(),
'center': [0, 0], 'zoom': 17,
'zoomControl': false,
'rotate': true,
'attributionControl': false,
'maxBounds': [
[25, -125],
[49.5, -66.5]
]
});
地图正确显示在正确的位置,并使用window.print函数正确打印。
window.print()函数在原始页面上有效,但在页面上显示了我不需要的所有控件。
不知道这是否是完成任务的最雄辩的方法,但是它奏效了。