2016-09-16 2 views
0

MapView를 사용하고 있고 각 구석이 맵 포인트 인 이미지로보기를 변환하려는 경우 어떻게하면됩니까? (코드를 요구하지 않고, 어떤 방향으로). 이미지를 저장하고 싶지는 않지만 단순히 같은 프로그램에서 컴퓨터 비전에 사용할 이미지 매트릭스를 모두 빠르고 동적으로 가져와야합니다. 나는 스크린 샷을 찍을 수는 없다.지도의 특정 부분을 신속하게 이미지로 변환하려면 어떻게해야합니까?

희망은 다른 사람들에게도 도움이되기를 바랍니다.

건배

+1

'MKMapSnapshotter' – dan

+0

와우를 사용할 수 있습니다. 놀랄 만한. 완벽 해. 어떻게 출력합니까? –

+1

위의 그림은 lat/lng 좌표와 이미지의 점 사이를 변환 할 수있는 몇 가지 추가 기능이있는'UIImage'를 감싸는 래퍼 인'MKMapSnapshot' 객체를 제공합니다. – dan

답변

3

MKMapSnapshotter가 당신이 원하는 것입니다.

let options = MKMapSnapshotOptions() 
options.region = mapView.region 
options.size = mapView.frame.size 
options.scale = UIScreen.mainScreen().scale 

let fileURL = NSURL(fileURLWithPath: "path/to/snapshot.png") 

let snapshotter = MKMapSnapshotter(options: options) 
snapshotter.startWithCompletionHandler { snapshot, error in 
    guard let snapshot = snapshot else { 
     print("Snapshot error: \(error)") 
     return 
    } 

    let data = UIImagePNGRepresentation(snapshot.image) 
    data?.writeToURL(fileURL, atomically: true) 
} 

this NSHipster 게시물을 확인 MKMapSnapshotter에 대한 자세한 내용을 읽기에 관심이 경우 : 여기 스위프트의 예입니다. 게시물에는 이미지에 주석을 그리는 방법의 예가 있습니다. 이전에 앱에서 사용한 주석은 잘 작동합니다.

희망 하시겠습니까?

관련 문제