リーフレット(leaflet)は軽量、多機能、拡張性、スマホ対応している地図の機能を持った、JavaScriptライブラリです。この記事では、地図の端にメジャーを表示させる方法と、そのカスタマイズする方を確認します。
JS地図ライブラリ・リーフレットを使って特定の位置のマップを表示する
2023年01月10日
leafletデモ
See the Pen leaflet 11 by logsuke (@design-list) on CodePen.
デモの地図の左下にメジャーが表示されているのがわかります。
メジャーを表示
const osm = L.tileLayer('https://tile.openstreetmap.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>'
});
var baseLayers = {
"シンプル": osm,
}
var map = L.map('myMap', {
center: [32.639884, 130.987154],
zoom: 8,
maxZoom: 18,
layers: [osm],
})
var LayerControl = L.control.layers(baseLayers).addTo(map);
var measure = L.control.scale({
maxWidth: 100,
imperial: false
}).addTo(map);
18 ~ 21 : Control.scale でスケールコントロールを作成します。
Option | Type | Default | Description |
---|---|---|---|
maxWidth | Number | 100 | コントロールの最大幅 (ピクセル単位)。幅は動的に設定され、丸め値を表示します (例: 100、200、500)。 |
metric | Boolean | True | メートル法線 (m/km) を表示するかどうか。 |
imperial | Boolean | True | インペリアル スケール ライン (mi/ft) を表示するかどうか。 |
updateWhenIdle | Boolean | false | true の場合、コントロールは移動終了時に更新されます。それ以外の場合は移動時に更新されます |
position | String | ‘bottomleft’ | 'topleft' , 'topright' , 'bottomleft' , 'bottomright' |
見た目の変更をしたい場合には、leaflet-control-scale-line クラスのプロパティを変更します。
.leaflet-control-scale-line {
border-color: green!important;
background: rgba(0, 128, 0, 0.314)!important;
color: #fff!important;
}