hfu / take-it-to-the-lucky

ベクトルタイルを気にするレポジトリ。日本語でOK。
The Unlicense
2 stars 1 forks source link

Mapbox GL JS 0.44 とArcGIS API for JavaScript の色解釈の違い #14

Closed hfu closed 6 years ago

hfu commented 6 years ago

事象

fill の fill-color を用いて挙動を比較したところ、次のとおりの違いが見つかりました。 相互運用性を最重要視した場合、色設定に hsl() または hsla() を使用するのは避けたほうが良いかもしれません。

color description Mapbox GL JS 0.44 ArcGIS API for JavaScript 3.21
#00f OK OK
#0000ff OK OK
rgb(0, 0, 255) OK OK
rgba(0, 0, 255, 1) OK OK
blue OK OK

hsl(100,

対処方法

style.json に埋め込まれた hsl 及び hsla の記述をそれぞれ rgb 及び rgba 記述に変換することで ArcGIS API for JavaScript 3.21 でも正常な表示にすることができます。

この変換を行うためのライブラリとして、colorcolor があります。

注釈

なお、ArcGIS API for JavaScript 3.21 は最新版ではありません。3 にももう少し新しいマイナーバージョンがありますし、三次元に対応した 4 シリーズもあります。

hfu commented 6 years ago

教訓: hsl 及び hsla は使用を避ける。