OpenLayers를 사용하여지도를 그리는 중입니다. 해당 국가의 사진이있는 국가를 나타내는 다각형을 채우고 싶습니다. ol.style.Fill
의 color
에 CanvasPattern을 전달할 수 있지만 이미지를 생성 할 수는 없습니다. 나는 사진이 비동기로드되어 있기 때문에 생각 http://jsfiddle.net/07366L44/5/이미지를 사용하여 OpenLayers에서 레이어를 채우려면 어떻게해야합니까?
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');
}
:
여기 내 코드 및 전체 예제와 JSfiddle입니다. 다른 예제는 photo.onload
메서드에서 패턴을 만들지 만 반환하는 방법을 모르겠습니다.
최선을 다해 나중에 다른 사진으로 애니메이트하거나 업데이트 할 수있는 캔버스를 반환하고 싶지만 나라마다 단 하나의 정적 이미지 만 해결할 것입니다!
좋은 하나. !!!!!!!! – pavlos
답변 해 주셔서 감사합니다. 그래도 맵을 생성 한 후에 스타일을 설정하는 방법을 모르겠다면 도움을 줄 수 있습니까? – Crummy
그 대답은 더 많은 컨텍스트를 제공해야합니다. 즉, 현재 코드를 사용하고있는 곳 (스타일 기능? 다른 곳?) 및 방법 (레이어 또는 기능의 스타일 설정) – ahocevar