2016-09-26 52 views
0

Googleマップとその中にあるいくつかのデータがあるページがあるので、「グラブスクリーンショット」ボタンをクリックして保存する必要がありますユーザーのページのスクリーンショットを開き、サーバーに保存します。ASP.netのサーバーに画像としてキャンバスを保存する

私はHtml2Canvasてみましたが、私が私のjavascript関数でdataurlすなわちにキャンバスを変換することができていない、私はこの使用:私は研究を行なった

function GenerateImage() 
    { 
    html2canvas($('#mainDiv'), { 
     onrendered: function(canvas) { 
      //this appends the canvas(screenshot) to the page, this is working fine 
       document.body.appendChild(canvas); 
      //this is not working, 
      //Error: SecurityError: The operation is insecure. 
      var image = canvas.toDataURL('image/png'); 
      image.crossOrigin = 'anonymous'; 
      var imgdata = image.replace(/^data:image\/(png|jpg);base64,/, ''); 

      $.ajax({ 
       url: '******', 
       data: { 
         imgdata:imgdata 
         }, 
       type: 'post', 
       success: function (response) { 
       console.log('Success'); 
       } 
      }); 
    } 
    }); 
    } 

を、私は、それはいくつかのCORSの問題で判明私は解決策を見つけることができません。

ASP.netを使用してスクリーンショットを作成できるかどうかは分かりましたが、それは可能ですか?前もって感謝します。

+0

あなたが試すことができます応答のための https://developer.mozilla.org/en-US/docs/Web/API/HTMLCanvasElement/toBlob –

+0

おかげで、私は1つは、あまりにも、私はこのエラーを取得していますことを試してみました - キャッチされませんSecurityError: 'HTMLCanvasElement'で 'toBlob'を実行できませんでした:汚染されたキャンバスがエクスポートされない可能性があります – lambda8

+0

私は参照してください... http://stackoverflow.com/questions/16235161/save-current-google-map-as-画像。たぶん、あなただけのuseCORSが欠落している:真 –

答えて

0

プロキシを使用して正常に実行できました。マップ上の別のウェブサイトのカスタムマーカーアイコンに問題がありました。キャンバスが汚れていた。私は自分のウェブサイトに画像を移動してパスを変更したが、「汚染されたキャンバスはエクスポートされないかもしれない」というエラーは消え去った。

関連する問題