2012-12-19 9 views
6

के साथ Google मानचित्र का स्नैपशॉट कैसे लेना है, मैं पॉलिलाइन के साथ Google मानचित्र का स्नैपशॉट लेने और Google मानचित्र पर पॉलीलाइन क्लिक पर खुली पॉपअप विंडो लेने के लिए कार्यक्षमता पर काम कर रहा हूं। पॉलिलाइन के साथ Google मानचित्र का स्नैपशॉट काम कर रहा है लेकिन यह पॉलीलाइन पर स्नैपशॉट ओपन पॉपअप विंडो नहीं ले पाएगा। पॉलीलाइन सानपशॉट चित्र पर दिख रही है लेकिन जानकारी विंडो नहीं दिख रही है। यहां स्नैपशॉट लेने के लिए कोड है।पॉलीलाइन और openInfoWindowHtml

 var snapShotControlOptions = { hidden: true }; 
       snapShotControlOptions.buttonLabelHtml="<snap id='snap' style='display:none' >snap</span>" 
       snapShotControl = new SnapShotControl(snapShotControlOptions); 
       map.addControl(snapShotControl); 

यहां विधि गूगल मानचित्र के sanp शॉट लेने के लिए तस्वीर ले:

इस कोड जावास्क्रिप्ट ऑनलोड पर कोड नियंत्रण प्रारंभ करने में है।

 function takeSnap() { 

      //static map size 
      var sizeStr = "640x640"; 
      var imgSize = ""; 
      if (sizeStr != "") { 
       var sizeArray = sizeStr.split("x"); 
       imgSize = new GSize(sizeArray[0], sizeArray[1]); 
      } 
      snapShotControl.setMapSize(imgSize); 
      var format = "jpg"; 
      snapShotControl.setFormat(format); 

      var url = snapShotControl.getImage(); 
      //   document.getElementById("snapshot_canvas").src = url; 
      SaveImage(url); 

      //   
     } 

//this will add polyline overlay to draw line on google map with different color of polyline on google map . 

    var polyline = directionsArray[num].getPolyline(); 
       polyline.setStrokeStyle({ color: streetColor, weight: 3, opacity: 0.7 }); 
       polyline.ssColor=streetColor;     
       map.addOverlay(polyline); 


///this code will open the pop info window on polyline those polyline created on google map 

और समस्या यह है कि जब मैं Google मानचित्र का sanpshot लेता हूं तो उनकी पॉप विंडो सानपॉट पर शामिल नहीं होती है।

var MousePoint = ""; 
       var marker; 
       GEvent.addListener(map, "mousemove", function (point) { 
        MousePoint = new GLatLng(point.lat(), point.lng()); 

       }); 

       GEvent.addListener(polyline, "click", function() {     
        map.openInfoWindowHtml(MousePoint, headMarkerHtml);     
       }); 
       GEvent.addListener(polyline, "mouseout", function() { 
        // map.closeInfoWindow(); 
       }); 

क्या आप कृपया बता सकते हैं कि मैं पॉलीलाइन ओवरले में पॉपअप विंडो पास करता हूं।

स्नैपशॉट लेने के लिए मैंने जावास्क्रिप्ट फ़ाइल snapshotcontrol.js का उपयोग किया है।

+0

क्या आप एक jsfiddle स्क्रिप्ट दे सकते हैं? मैं आपकी मदद कर सकता हूं लेकिन मुझे रनटाइम पर अपना कोड देखना चाहिए – Mehmet

उत्तर

0
snapshotcontrol स्रोत

इस पुस्तकालय से

आप आसानी से अपने इंटरेक्टिव मानचित्र की एक छवि "स्नैपशॉट" उत्पन्न करने के लिए, गूगल स्थिर मानचित्र API का उपयोग कर बनाता है।

स्टेटिक नक्शे जानकारी विंडो या कुछ भी समर्थन नहीं करता मानचित्र https://developers.google.com/maps/documentation/staticmaps/index

आप ब्राउज़र के भीतर एक कैनवास पर नक्शा आकर्षित कर सकता करने के लिए कस्टम पाठ जोड़ने तो उसके ऊपर जानकारी विंडो आकर्षित की तरह इस http://html2canvas.hertzen.com/ का उपयोग करके और फिर कैनवास सामग्री डाउनलोड करें

संबंधित मुद्दे