問題 1: Baidu Map はタイル画像 (地図が写真で構成されている) を使用しています。html2canvas を使用して同じドメイン名にない画像を処理すると、ブラウザにクロスドメイン エラーが表示されます。タイル画像のドメイン名が不明で proxy_pass を指定できないため、リバース プロキシを使用しても解決できません。 解決方法:百度地図の静的画像処理(http://lbsyun.baidu.com/index.php?title=static)を使用する。このとき、ドメイン名が決定され(http://api.map.baidu.com)、リバースプロキシを使用してクロスドメインを解決できます。 <!--html--> <el-image :src="`/baidu-static/staticimage/v2?ak=yourak&width=1024&height=400¢er=${center.lng},${center.lat}&zoom=16`" > <div スロット="プレースホルダー" クラス="画像スロット" > 読み込み中... </div> </el-image> <!--nginx--> 場所 ^~ /baidu-static/ { add_header 'Access-Control-Allow-Origin' "$http_origin" 常に; add_header 'Access-Control-Allow-Credentials' 常に 'true' を設定します。 add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS' 常に; add_header 'Access-Control-Allow-Headers' 'Accept、Authorization、Cache-Control、Content-Type、DNT、If-Modified- 常に、Keep-Alive、Origin、User-Agent、X-Requested-With' が設定されます。 proxy_pass http://api.map.baidu.com/; } 質問 2:マップ上にオーバーレイを表示するにはどうすればよいですか? 解決策: Baidu Map の静的画像 API を調べたところ、カスタム オーバーレイ スタイルがあまりサポートされていないことがわかりました。指定できるのはカスタム画像 (ローカル画像ではない) のみです。いろいろ試した結果、openLayers.Map を使うのが実現可能な方法だと思いました。しかし、コード修正の作業量が大きすぎたため、断念しました。その後、div を使用してオーバーレイを直接シミュレートし、静的レイヤー レベルよりも少し高いレベルに設定すると問題が解決すると考えました。 質問 3: CSS スタイルを使用して点線の円を描きました。生成された画像を html2canvas で処理したところ、点線が実線に変わったことがわかりました。 解決策: キャンバスを使用して円を描く 質問4:アイコンは絶対配置されていますが、html2canvasで処理された後、生成された画像にアイコンが表示されません。 解決策: アイコンの Z インデックスを Baidu の静止画像レベルよりも大きく設定します (PS: 静止画像のスタイルも絶対位置を使用します) 質問5: html2canvas処理後に生成された画像の背景色が黒色になります 解決策: image/png を image/jpg に変更する 試す { html2canvas(sharePage, { CORS の使用: true }).then((キャンバス) => { const imgBase64 = canvas.toDataURL('image/jpg') this.data64 = imgBase64 }) } キャッチ (エラー) { } 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
>>: JSはカリキュラムタイムテーブルアプレット(スーパーカリキュラムタイムテーブルを模倣)を実装し、カスタムバックグラウンド機能を追加します
この記事では、例を使用して MySQL ビューの機能と使用方法を説明します。ご参考までに、詳細は以下...
目次1.entires() メソッドの詳細な構文2.entires() メソッドの一般的な使用法と注...
目次序文1. ヌル合体演算子2. ??= 空代入演算子3. ?. オプション連鎖演算子4. ?: 三...
この記事では、例を使用して、MySQL で更新可能なビューを作成する方法について説明します。ご参考ま...
関連記事:初心者が学ぶ HTML タグ (5)導入された HTML タグは、必ずしも XHTML 仕...
3つの知識ポイント: 1. CSS子孫セレクターhttps://www.w3school.com.c...
ページ内のテーブルの幅を width="600px" に設定した後も、幅が固定さ...
実際のプロジェクトでは、上下のスクロール バーと左右のスクロール バーは DIV 内にないため、右の...
1. Yumのインストール yum でサブバージョンをインストール 2. 構成1. 倉庫を作る/ho...
現在のデータベースでサポートされているエンジンを表示します エンジンを表示 +-----------...
MySQL 8.0.3がリリースされます。新機能を見てみましょうMySQL 8.0.3 は RC ...
01 並列レプリケーションの概念MySQL のマスター スレーブ レプリケーション アーキテクチャで...
このロゴを .rar ファイルとしてローカルに保存し、解凍して効果を確認することができます。よりシン...
Linux システムのシャットダウン コマンドは何ですか? Liangxu Tutorial Net...
2次元配列の次元削減配列インスタンスメソッド concat と ES6 スプレッド演算子を使用した次...