Openlayers 修改要导出的地图的大小

Openlayers 修改要导出的地图的大小,openlayers,openlayers-3,Openlayers,Openlayers 3,我想导出不同大小的地图。我找到的唯一方法是在调用导出函数之前为我的地图设置一个新的高度和宽度,例如: canvas.resizeAndExport = function(canvas){ document.getElementById('ol3map').style.width = '569px'; document.getElementById('ol3map').style.height = '238px';

我想导出不同大小的地图。我找到的唯一方法是在调用导出函数之前为我的地图设置一个新的高度和宽度,例如:

canvas.resizeAndExport = function(canvas){
                document.getElementById('ol3map').style.width = '569px';
                document.getElementById('ol3map').style.height = '238px';
                olmap.updateSize();
                return canvas.toDataURL();
            }
但它会改变屏幕上地图的大小(显然)。这就是重点,我不想让我的用户看到变化


我该怎么做?克隆我的地图

你可能想看看——它或多或少符合你的建议。地图在导出后被设置回其原始尺寸,因此用户通常不会注意到临时尺寸的变化。@ahocevar感谢这正是我所需要的,我只注意到了导出png示例“我的坏”。您可能想看一下-它或多或少符合您的建议。地图在导出后被设置回其原始尺寸,因此用户通常不会注意到临时尺寸的变化。@ahocevar感谢这正是我所需要的,我只注意到导出png示例,我的坏。