【发布时间】:2017-09-12 17:40:39
【问题描述】:
我正在使用 OpenLayers 绘制地图,我想用来自该国家/地区的照片填充描述该国家/地区的多边形。我知道我可以将 CanvasPattern 传递给ol.style.Fill 的color,但我不知道生成图像。
这是我的代码,以及带有完整示例的 JSfiddle:http://jsfiddle.net/07366L44/5/
function getPhoto() {
var canvas = document.createElement('canvas');
var context = canvas.getContext('2d');
var photo = new Image();
photo.src = 'http://i.imgur.com/C6PL9tB.jpg';
return context.createPattern(photo, 'repeat');
}
我认为这是因为照片是异步加载的。其他示例在 photo.onload 方法中创建模式,但我不知道如何返回。
最理想的情况是我想返回一个画布,我可以在以后用其他照片制作动画或更新,但我会满足于每个国家/地区只有一个静态图像!
【问题讨论】:
标签: javascript openlayers