透明なPNG(ImageMapTypeとして実装)としてレンダリングする必要があるGoogleマップAPIv3ポリラインとマーカーの大規模なセットがあります。latLngからピクセルおよびタイル座標への変換に関するすべての数学/ジオメトリを実行しました。
問題は、私のアプリの最大許容ズーム、つまり18で、複合画像の幅と高さの両方が少なくとも80000ピクセルに及ぶことです。そのため、1つのピースにレンダリングしてから、タイルに分割することは不可能になります。
事前にポリラインを分割してパーツをタイルに配置し、各タイルだけをレンダリングする方法を試しましたが、これまではほとんど問題なく機能していました。でも、定型化されたマーカーやテキストなどの派手なものを描く必要があると、とても難しくなります。
これまでのところ、描画方法としてC#GDI +を使用していました(古いビットマップ/グラフィックスのペア)。
ここでの多くの質問は、既存の画像の分割、保存、およびAPIへのリンクに関するものです。私はすでにそれを行う方法を知っています。
私の問題は、最初の非常に大きな画像を描画してから分割するにはどうすればよいですか?本当の画像/ビットマップである必要はありません/あなたが望む解決策と呼んでください。友人からSVGの使用を勧められましたが、自分のニーズに合った適切なレンダリングソリューションがわかりません。
少しわかりやすくするために、入出力の観点から考えてみてください。私の入力は、何万ものピクセルにまたがる描画する必要のあるデータ(線、円、テキストなど)であり、出力はタイルである必要があります。私は「魔法の箱」が何であるかを本当に気にしません、そして私はプラットフォームが何であるかさえ気にしません。