使用者:What7what8/testdoc
模板功能概覽
[編輯]
741yds
Tower
Car Park
(Hunt's Hill)
House
此模板提供:
- 靜態定位地圖: 在框架內顯示來自 OpenStreetMap (OSM) 的地圖,覆蓋全球到單個建築的任意位置和比例。
- 豐富的標註:
- 可選的多個標記點(圖像或內置形狀)。
- 文本標籤(可帶維基鏈接)。
- 編號點(圓形、方形、三角形、菱形)。
- 其他圖形元素(線條、框、箭頭等)。
- 交互式鏈接: 右上角提供鏈接,可打開全屏交互式地圖版本,包含所有標記點的詳細信息。
- 上下文微縮圖: 可在地圖一角顯示小型定位地圖(Minimap),提供地理上下文。
- 比例尺: 右下角顯示粗略的比例尺(注意:地圖投影導致比例隨緯度變化)。
核心優勢: 框架地圖能直接展示精心選擇和編輯的細節與上下文,無需用戶額外交互即可理解主題。全屏地圖則提供探索性交互功能。
核心用法與示例
[編輯]基礎用法:顯示位置
[編輯]僅需中心坐標和縮放級別即可顯示一個簡單的地圖。
{{OSM Location map
| coord = {{coord|53.4146|-4.3341}} <!-- 地图中心点的纬度/经度 -->
| zoom = 15 <!-- 缩放级别:0 (全球) 到 19 (街道) -->
}}
添加標記點與標籤
[編輯]添加一個默認的紅色標記點 (Red pog) 及其文本標籤。mark-title, mark-image, 和 mark-description 參數用於增強全屏地圖的交互體驗。
{{OSM Location map
| coord = {{coord|53.4146|-4.3341}}
| zoom = 15
<!-- 标记点 -->
| mark-coord = {{coord|53.3966|-4.46204}} <!-- 标记点的坐标 -->
| label = [[Llanfechell#Llanfechell Triangle|Llanfechell Triangle]] <!-- 标签文本(可含维基链接) -->
| label-pos = right <!-- 标签位置:right, left, top, bottom 或方位点如 south, southeast, east -->
| mark-title = [[Llanfechell#Llanfechell Triangle|Llanfechell Triangle]] <!-- 全屏地图的工具提示/可点击链接 -->
| mark-image = The Llanfechell Triangle - geograph.org.uk - 1260817.jpg <!-- 全屏显示的图片(Commons文件名,无File:) -->
| mark-description = Located in [[Llanfechell]] <!-- 全屏显示的描述文本 -->
}}
- 標籤鏈接: 標籤中的維基鏈接會在框架地圖上顯示為鏈接。如果鏈接指向章節(如
#Llanfechell Triangle),框架地圖顯示鏈接文本,全屏地圖則可能顯示特徵圖片(如果相關頁面存在)。 空白模板參考:
{{OSM Location map | coord = {{coord|}} | width = | height = | caption = | label = | mark-coord = {{coord|}} | label-pos = | mark-title = | mark-image = | mark-description = }}
添加多個標記點
[編輯]支持無限個編號的標記點。每個標記點有自己的參數集(mark-coord1, label1, label-pos1 等)。mark1 參數集的值會被後續編號點繼承(除非被覆蓋),markD 參數集可提供更通用的默認值。
{{OSM Location map
| coord = {{coord|...}}
| zoom = ...
| mark-coord1 = {{coord|...}} | label1 = Point 1 | ... <!-- 标记点 1 -->
| mark-coord2 = {{coord|...}} | label2 = Point 2 | ... <!-- 标记点 2 -->
| mark-coord3 = {{coord|...}} | label3 = Point 3 | ... <!-- 标记点 3 -->
}}
- 繼承規則: 對於某個標記點參數(如
shape3),查找順序為:shape3>shapeD>shape1> 底層默認值。
使用編號點與自動標題
[編輯]
861yds
railway station
San Michele
della Salute
Sighs
San Marco
St Mark's Basilica
St Mark's Campanile
Horses of Saint Mark
Doge's Palace
使用 shape = n-circle(或 n-square, n-triangle, n-diamond)創建帶數字的標記點。auto-caption 參數可自動生成圖例。
{{OSM Location map
| coord = {{coord|...}}
| zoom = ...
| shape1 = n-circle | mark-coord1 = {{coord|...}} | mark-title1 = Location 1 | ...
| shape2 = n-circle | mark-coord2 = {{coord|...}} | mark-title2 = Location 2 | ...
| auto-caption = 1 <!-- 启用自动图例 -->
}}
- 標籤位置調整: 使用
ldx(水平偏移,-左/+右)和ldy(垂直偏移,-上/+下)微調標籤位置,避免重疊。label-pos4 = top,with-line | ldx4=8 | ldy4=-37可將標籤移遠並用線連接。 - 換行符: 在標籤文本中使用
^進行換行(顯示實際的^用 ^)。 - 自動圖例 (
auto-caption):auto-caption=1: 生成基本圖例。auto-caption=14: 指定最小列寬(14 em),自動分列。auto-caption=collapsed columns=2: 初始摺疊的 2 列圖例。
- 編號匹配: 框架地圖上的編號應與全屏地圖一致。全屏編號總是從 1 開始順序排列。使用
numbered=覆蓋自動編號可能導致不匹配。
查看 {{Flushing Meadows-Corona Park map}} 模板獲取真實示例。
高級功能與技巧
[編輯]添加圖形元素
[編輯]地圖可包含各種圖形,如線條 (shape=rule)、箭頭 (shape=curveA/curveC)、框 (shape=box/panel)、自定義形狀(如 diamondD, cross, fivepointstar)等。
- 線條 (
shape=rule): 使用shape-outline控制顏色、寬度、不透明度和樣式(實線solid、虛線dashed、點線dotted、雙線double)。例:shape-outline6=hard grey,2,60,dashed。 - 自定義尺寸:
mark-size可設置寬度和高度(mark-size=44,62),對矩形框 (box) 還可設置圓角 (mark-size=44,62,4)。 - 透明與輪廓: 設置
shape-color=transparent或低不透明度值(如shape-color=hard blue, 30)創建透明形狀。shape-outline定義輪廓。 - 面板 (
shape=panel): 創建信息框區域。文本放置在內部,label-pos控制對齊(左/右)和換行。 圖例框 (
legendBox): 更便捷地添加圖例。指定位置(相對於地圖左上角的像素)、大小和條目(引用現有標記點的形狀)。例:| legendBox=Legend,115px65px1px,175px205px <!-- 标题,宽高边框,位置X,Y --> | legendItem1=Major Roman Sites,7 <!-- 文本,标记点编号 --> | legendItem2=Medieval Sites,1,42 <!-- 文本,标记点编号,距顶距离(像素) -->
添加微縮地圖 (Minimap)
[編輯]在角落添加定位地圖提供上下文。
{{OSM Location map
| ...
| minimap = file bottom left <!-- 位置:file bottom left/right, file top left/right -->
| mini-file = Location_map_UK_Leicester.svg <!-- Commons文件名,无File: -->
| mini-width = 120 <!-- 宽度(像素) -->
| mini-height = 100 <!-- 高度(像素) -->
| minipog-gx = 38 <!-- 定位点X坐标 (0-100网格,左上角为0,0) -->
| minipog-gy = 60 <!-- 定位点Y坐标 -->
}}
- 定位點:
minipog-gx和minipog-gy在覆蓋微縮圖的 100x100 網格上定位(0,0 在左上角)。例如(38,60)。 - 定位框: 使用
minimap-boxwidth=xx(xx是框占微縮圖寬度的百分比)替代點,框以(minipog-gx, minipog-gy)為中心。 簡寫格式 (
mini-locator):| mini-locator=Leicester UK ward map 2015 (blank).svg,top left,132px153px,38,60,16 <!-- 文件名, 位置, 宽px高px, gx, gy, 框宽度% -->
弧線上的文本 (ArcText)
[編輯]沿曲線放置文本,適合標記河流、海岸線等。
標準格式:
| arc-coordA = {{coord|52.4109|-4.0875}} <!-- 第一个字母的坐标 --> | arc-textA = Afon Rheidol <!-- 文本 --> | arc-angleA = -31 <!-- 起始角度(度) --> | arc-gapA = 4.5 <!-- 字母间距 --> | arc-radiusA = 0.24 <!-- 弧线半径 --> | arc-text-sizeA = 11 <!-- 字体大小 --> | arc-text-colorA = blue <!-- 颜色 --> | ellipse-factorA = 0.98 <!-- 椭圆因子(1=圆) -->簡寫格式 (
arcA):| arcA = "Afon Rheidol", 52.4109, -4.0875, 11, blue, -31, 4.5, 0.24, 0.98 <!-- 文本, 纬度, 经度, 大小, 颜色, 角度, 间距, 半径, 椭圆因子 -->
更多示例和模式見
Template:OSM Location map/ArcText/doc。
使用地圖數據
[編輯]map-data: 添加來自 OpenStreetMap 的行政邊界、道路等(需維基數據 Q 值)。例:map-data=Q83065(萊斯特市邊界)。可添加多個 Q 值(逗號分隔)。map-data-heavy/map-data-light: 分別使用更粗/更細的線寬。map-data-inverse: 在指定邊界外添加淺灰色遮罩(帶 1px 灰邊)。map-data-text: (全屏地圖)點擊線條時顯示的文本(可含鏈接)。map-raw: 直接顯示維基上的 GeoJSON 文件(如Wikipedia:Map data/...或 Commons 的.map文件)。map-wdqs: 執行 SPARQL 查詢並在圖上顯示結果點/線/面。
樣式控制
[編輯]文本顏色 (label-color):
- 建議方案:定居點(
soft grey)、水域(soft blue)、綠地(soft green)、單個地點(dark grey)、圖例/面板(dark brown)。 - 避免過度使用紅色(
hard red),易與維基紅鏈混淆。 - 可使用標準顏色名(見下方表格)或十六進制值(如
#AAAAAA)。 - 設置不透明度:
label-color=dark blue, 40(40% 不透明度)。
- 建議方案:定居點(
- 形狀顏色 (
shape-color) 與輪廓 (shape-outline): 類似文本顏色控制,可設置不透明度和線條樣式。 - 文本效果:
- 換行: 在
label文本中使用^。 - 無標記的標籤: 設置
mark-size=0。 - 傾斜標籤: 使用
label-angle=角度(定居點名稱通常不傾斜)。 - 維基標記: 標籤文本支持
**粗体**、_斜体_和维基链接。謹慎使用 HTML/CSS。
- 換行: 在
在信息框中使用
[編輯]- 如果信息框支持
map_image參數,優先使用。 - 或通過
|module={{OSM Location map|...}}嵌入(例如{{infobox school}})。 - 可放在信息框圖片下方的標題中(需同時存在圖片)。
- 使用
{{switcher}}可在單個信息框中切換顯示兩個地圖實例。 - 如果信息框默認使用
maplink地圖,檢查是否有機制替換為更豐富的OSM Location map。
參數速查表
[編輯]以下是所有可用參數的列表。markD 參數集提供默認值。
| Code blank - OSM Location map/sandbox template, listing all the parameters |
|---|
{{OSM Location map/sandbox
| coord = {{coord| | }}
| zoom=
| float =
| width =
| height =
| fullscreen-option =
| caption =
| title =
| minimap =
| mini-file =
| mini-width =
| mini-height =
| minipog-gx =
| minipog-gy =
| minipog-boxwidth =
| scalemark =
<!-- optional default settings. These 'D' parameters only create override values for subsequent marks. They make no marks of their own -->
| shapeD =
| shape-colorD =
| shape-outlineD =
| shape-angleD =
| markD =
| mark-sizeD =
| mark-dimD =
| label-sizeD =
| label-colorD =
| label-angleD =
| label-posD =
| ldxD = <!-- short-forms of label-offset-x and -y are now available for all sets-->
| ldyD =
<!-- unumbered parameter set creates mark and/or label on the map -->
| mark-coord = {{coord| | }}
| mark =
| shape =
| shape-color =
|shape-outline =
| shape-angle =
| mark-size =
| mark-dim =
| label =
| label-size =
| label-color =
| label-angle =
| label-pos =
| ldx =
| ldy =
| mark-title =
| mark-image =
| mark-description=
<!-- Arc text (A, B, C ... Z) no shape, mark or fullscreen effect, just text on an arc. Coords are for the first letter (max 26).-->
| arc-coordA = {{coord| | }}
| arc-textA =
| arc-angleA =
| arc-gapA =
| arc-radiusA =
| arc-text-sizeA = <!-- defaults to 12 -->
|arc-text-colorA =
|ellipse-factorA = <!-- defaults to 1.0 -->
<!-- numbered markers. Values set in mark1 will be inherited by all other numbered markers, unless overridden by a 'D' value-->
| mark-coord1 = {{coord| | }}
| mark1 =
| shape1 = <!--image/circle/square/triangle/diamond/rule/box/ellipse/etriangle/panel -->
| shape-color1 =
|shape-outline1 = <!--color,width,opacity,style-->
| shape-angle1 =
| mark-size1 = <!--width,height,corner-->
| mark-dim1 =
| label1 = <!--use ^ to add a newline, this makes labela1 and labelb1 redundant -->
| label-size1 = <!--includes extra parameter options: ,outline,background for text effects-->
| label-color1 =
| label-angle1 =
| label-pos1 = <!--position,[line option][,further options] -->
| ldx1 =
| ldy1 =
| mark-title1 =
| mark-image1 =
| mark-description1=
| mark-coord2 ={{coord| | }}
| mark2 =
| shape2 =
| shape-color2 = <!-- ... and so on for all the parameters above -->
}}
|
地圖顯示參數
[編輯]| 參數 | 描述 |
|---|---|
coord
|
必需。 地圖中心點的緯度/經度。使用 coord={{Coord|纬度|经度}}。
|
zoom
|
必需。 縮放級別 (0=全球, 19=街道)。 |
float
|
地圖浮動位置:left, center (或 centre), right (默認)。
|
width height
|
地圖寬度和高度(像素,默認 350x250)。 |
caption
|
地圖下方的標題文本(可含維基標記、圖片、參考文獻)。 |
auto-caption
|
為編號點自動生成圖例:1(基礎)、15(最小寬度15em)、collapsed columns=2(初始摺疊的2列)。
|
toggletext
|
設置摺疊圖例的切換文本(如 '[Hide/show points list]')。
|
title
|
地圖上方的標題文本(默認居中粗體)。 |
legendBox legendItem(n)
|
在地圖內添加圖例框。legendBox=标题,宽度px高度px边框px,位置Xpx,Ypx。legendItem(n)=文本,标记点编号[,距顶距离px]。
|
map-data map-data-text map-data-heavy map-data-light map-data-inverse
|
添加 OSM 數據元素(邊界、道路等,需 Q 值)。map-data-text 設置全屏點擊文本。heavy/light 控制線寬。inverse 添加外部遮罩。
|
map-raw
|
顯示原始 GeoJSON 文件(逗號分隔多個文件)。 |
map-wdqs map-wdqs-type
|
執行 SPARQL 查詢並顯示結果 (geopoint-點, geoline-線, geoshape-面)。
|
minimap
|
微縮地圖位置:file bottom left/right, file top left/right。
|
mini-file
|
Commons 微縮地圖文件名(無 File:)。
|
mini-width mini-height
|
微縮地圖寬高(像素)。 |
minipog-gx minipog-gy
|
微縮地圖上定位點的網格坐標 (0-100, 左上角0,0)。 |
minimap-boxwidth
|
使用定位框(寬度百分比)替代點。 |
mini-locator
|
微縮地圖簡寫:文件名,位置,宽度px高度px,gx,gy,框宽度%。
|
scalemark
|
比例尺:1 顯示 (默認),0 隱藏,數值 向左移動像素。
|
magnify
|
(2025+) 放大中心區域 (1.0-2.0)。 |
nolabels
|
1 隱藏 OSM 基礎地圖上的標籤(道路名可能仍顯示)。
|
標記點默認值 (D 參數集)
[編輯]這些參數為後續標記點設置覆蓋默認值,本身不創建標記點。
| 參數 | 描述 |
|---|---|
shapeD
|
默認形狀 (image, circle, box, rule 等)。
|
shape-colorD
|
默認形狀填充色。 |
shape-outlineD
|
默認形狀輪廓 (颜色,宽度,不透明度,样式)。
|
shape-angleD
|
默認形狀旋轉角度。 |
markD
|
默認標記圖像文件 (Commons)。 |
mark-sizeD
|
默認標記尺寸 (宽[,高[,圆角]])。
|
label-sizeD
|
默認標籤字體大小。 |
label-colorD
|
默認標籤文字顏色。 |
label-angleD
|
默認標籤旋轉角度。 |
label-posD
|
默認標籤位置 (left, right, top, bottom, center, 方位點)。
|
ldxD ldyD
|
默認標籤水平/垂直偏移(像素, -左/-上, +右/+下)。 |
標記點參數
[編輯]| 參數 | 描述 |
|---|---|
mark-coord
|
必需。 標記點的緯度/經度 ({{Coord|...}})。
|
mark
|
標記圖像文件 (Commons)。默認為 Red pog.svg。
|
shape
|
標記形狀 (image, circle, square, triangle, diamond, box, panel, rule, curveA/C, n-circle 等, 或 clip-path 形狀如 diamondD, cross)。
|
shape-color
|
形狀填充色(可加不透明度)。 |
shape-outline
|
形狀輪廓 (颜色,宽度px,不透明度%,样式)。
|
shape-angle
|
形狀旋轉角度(度)。 |
mark-size
|
尺寸 (宽px[,高px[,圆角px]])。設 0 僅顯示標籤。
|
label
|
標籤文本。用 ^ 換行。支持維基標記 (**粗体**, _斜体_, 链接, 謹慎使用 )。
|
label-size
|
標籤字體大小(可加 ,background, ,outline, ,paleground, ,beigeground 增強可讀性)。
|
label-color
|
標籤文字顏色(建議使用 OSM 柔和色調)。 |
label-angle
|
標籤旋轉角度(度)。 |
label-pos
|
標籤位置 (left/right/top/bottom/center/方位点)。可加選項:,with-line, ,n-line, ,mark-line,线宽,样式,间隙, ,photo-panel,图片尺寸,面板宽,面板高。
|
ldx ldy
|
標籤水平/垂直偏移(像素)。 |
mark-title
|
全屏地圖的工具提示/可點擊鏈接。設 none 排除在全屏外。含鏈接會使框架地圖標記點也可點擊。
|
mark-image
|
全屏地圖顯示的圖片(Commons文件名,無 File:)。
|
mark-description
|
全屏地圖顯示的描述文本。 |
numbered
|
覆蓋編號形狀的自動編號(文本)。 |
弧線文本參數 (A, B, C ... Z)
[編輯]| 參數 | 描述 | 簡寫參數 |
|---|---|---|
arc-coordA
|
弧線文本起點坐標 ({{Coord|...}})。
|
|
arc-textA
|
顯示的文本。 | arcA = "文本", 纬度, 经度, 大小, 颜色, 角度, 间距, 半径, 椭圆因子
|
arc-angleA
|
文本起始角度(度)。 | |
arc-gapA
|
字母間距因子。 | |
arc-radiusA
|
弧線半徑因子。 | |
arc-text-sizeA
|
字體大小(默認 12)。 | |
arc-text-colorA
|
文字顏色。 | |
ellipse-factorA
|
橢圓因子(1=圓,<1壓扁垂直,>1壓扁水平)。 |
與 Maplink 的比較
[編輯]- OSM Location Map:
- 優勢: 框架地圖能直接展示豐富的手工定製細節(多種標記、形狀、文本標籤、圖形、覆蓋層)。提供更精細的控制和表達力,適合需要特定上下文的地圖。
- 特點: 靜態框架 + 全屏交互鏈接。文本標籤在地圖上直接可見。
- Maplink:
- 優勢: 更側重自動化(通過維基數據 Q 值添加點/線/面)。通常在信息框中使用,代碼可能更簡潔。
- 特點: 框架地圖功能較基礎,主要依賴全屏交互。文本標籤通常在全屏顯示。
- 總結:
OSM Location map</code> 更适合需要'''在框架地图中直接呈现复杂、定制化信息'''的场景。<code>{{Maplink}}更擅長快速生成基於維基數據的自動化地圖。兩者功能有部分重疊,但核心目標不同。
更新歷程
[編輯]- 當前版本 (2025+): 核心基於 Lua/Scribunto 模塊。使用 MediaWiki 的 Kartographer 擴展 (
<mapframe>) 渲染 OSM 基礎地圖。模塊計算坐標轉換(緯度/經度 -> 地圖像素),並使用 內聯 CSS 在地圖上疊加圖形和文本元素。這使得地圖成為頁面的「實時」部分(支持維基標記、鏈接)。 - 優勢: 高性能(相比舊方案加載快 5 倍)、低資源消耗、支持無限標記點、功能擴展性強。
- 歷史: 曾依賴
{{Graph:Street map with marks}}和 Vega 庫 (2016-2023)。2023 年 Vega 因安全風險被移除,臨時方案使用純維基模板 + Kartographer。2025 年遷移到 Lua 模塊解決性能瓶頸。 - 全屏地圖: 通過
<maplink>實現,提供平移、縮放、查看附近文章、顯示標記點詳情等功能。
核心背景:服務中斷與恢復 (2024 年更新)
- 問題起源 (2023 年 4 月): 維基媒體基金會 (WMF) 發現安全漏洞,停用了關鍵的 'Graph' 模塊。該模塊負責三件事:顯示正確的 OSM 地圖區域、坐標轉換(墨卡托轉頁面坐標)、生成地圖上的符號/圖像/文本。
- 預期與延宕: 最初計劃短暫停用以升級到 Vega v5,但因安全顧慮、性能問題(加載時間長)和未來維護資源的不確定性,升級受阻,停用期延長。
- 技術突破與解決方案:
- 利用停用期解決了墨卡托坐標轉換的數學問題,使得坐標轉換可通過維基文本實現。
- 探索並利用了維基百科內置的 CSS 圖形功能和
{{maplink}}的「覆蓋層」(overlay)能力。 - 基於以上兩點,成功重建了 OSM 位置地圖的核心功能(顯示、坐標、符號),無需再依賴 'Graph' 模塊或 Vega 引擎。
- 目標: 新版本旨在讓約 5,600 張現有地圖恢復接近原始設計的顯示效果(優於僅顯示標記點的臨時方案),並增加新功能。
新版本 (CSS 版) 的局限與差異 (截至 2024 年 3 月)
- 文本定位 (已解決): 初期最大問題是文本放置。現已可靠解決,文本可精確放置在符號四周「合適的距離」處。
- 注: 臨時的
jdx=參數已廢棄,可從模板調用中移除。
- 注: 臨時的
- 尺寸與位置差異: 因代碼和調用方式不同,新版的圖形和文本大小、位置可能與舊版略有差異。目標是大多數地圖視覺上相似。
- 弧形文本 (ArcText):
- 舊版需要大量調整(隨縮放和緯度變化)。
- CSS 版更穩定可預測,但結果與舊版不同,可能需要手動編輯適配。
- 改進: 文本渲染更優,彎曲更平滑。
- 光暈功能 (Halo): 因簡化需求,該少用功能在重寫中被省略。可用
shape-outline模擬類似效果(需社區討論是否恢復)。 - 大型圖像/覆蓋層定位: 因尺寸模型根本性改變及統一形狀/圖像尺寸的決定,大型透明覆蓋層的位置可能與舊版不同,可能需要重新調整大小和位置。
現已可用的新功能 (2024 年 CSS 版)
- 全屏鏈接: 直接利用
{ {maplink}}在右上角提供的「全屏鏈接」框,替代了舊版圖注頂部的文本鏈接。 - 標記點可點擊鏈接:
- 首次實現點擊地圖標記點可跳轉到對應維基條目。
- 利用
mark-title中的信息(也用於自動圖注和全屏)。 - 行為:維基鏈接第一個提供的鏈接(如有多個),鼠標懸停時顯示鏈接提示。無鏈接的標記點無動作。
- 待討論: 是否需要視覺提示表明可點擊?(如演示地圖中的 5 個可點擊點)。
- 行政區劃邊界 (重大新增):
- 之前僅限於全屏顯示的「願望清單」功能。
- 現在可直接在頁面內的地圖框架中顯示邊界(及潛在的其他線狀要素)。
- 限制:只能繪製實線(不能虛線等),但可設置高透明度融入背景。
- 使用方法:通過
map-data設置,利用維基數據頁面上的 'Qvalues'。
- 自動圖注分欄:
auto-caption=現在可指定欄寬(單位 em),將編號項列表分成多欄顯示。 - 繪製順序:
- 舊版:先畫所有形狀,再覆蓋文本。
- 新版:每個元素(形狀、標籤、編號文本)按順序繪製,後繪製的可能覆蓋先繪製的。
- 建議: 將重要項目(
mark1)視為頂層,編號更大的在下層。若遮擋重要信息,可能需要重新編號。也可用下文的連接線功能將標籤移出擁擠區。
- 標籤偏移簡寫: 使用
ldx(水平偏移) 和ldy(垂直偏移) 替代label-offset-x/y。正值向右/下,負值向左/上 (例:ldx4=-25| ldy4=-15)。廢棄的jdx=已無效。 - 多值參數 (簡化模板調用): 多個參數現在接受逗號分隔值:
mark-size=: [寬度(px), 高度(px), 圓角半徑(px)] (僅寬度必需)。shape-color=: [顏色, 不透明度(0-100)] (兼容性:1=全透明(舊習慣),100=不透明,0/未定義=不透明)。取代shape-opacity=。shape-outline=: [顏色, 線寬(px), 不透明度(0-100), CSS線型(solid/dotted/dashed/double等)]。例:shape-outline=red,8,30,solid可模擬光暈。label-pos=: 新增了多種繪製連接線的方式(見下文「新圖形元素」)。
- 新圖形元素 (均可用於最多60個標記點):
30km
19milesShapes with one size value:
Each can be assigned
mark-size=, shape-color=,
shape-outline=, shape-angle=,
plus a set of label parameters.Some shapes can set a mark-size
with both height and width values
Photo-
panel
label-pos adds line-drawing
features by using 'with-line',
'line-next', 'n-line' or
to a 'photo-panel'C-DACor use numbered=17n-shape auto-number
default is shape=image
mark=Red pog.svgpanel: mark-size=150,35,2
and text is put insideshape=box
mark-size=30,12shape=ellipseshape=square
with double outlineshape=circle
with open centreshape=box
with rounded cornersShapes can have variants:ruleruleAcurveCtrianglediamondsquarecircleExample shapes now available using OSM Location map/sandbox. This also gives an idea of how a legend can be incorporated within a map.
- 基礎形狀 (
circle, square, diamond, triangle/triangle-up): 寬度=高度,只需一個mark-size值。可旋轉(shape-angle=)。可設置顏色和輪廓(shape-color/outline=)。注意: 三角形不能有輪廓(CSS限制)。可加n-或l-前綴在形狀上顯示數字/字母。 - 可變形狀 (
box, ellipse, triangle): 可設不同寬高 (例:mark-size=34,14)。box可加第三個值設圓角 (例:mark-size=34,34,3)。 - 線 (
rule): 在坐標點處放置一條線。mark-size=設置長度。若「高度」>1,則應用shape-outline屬性,繪製雙線 (間隙=高度值,例:mark-size=120,10)。 - 帶箭頭的線/弧 (
ruleA, curveA(逆时针), curveC(顺时针)):mark-size=設長度,shape-angle=旋轉,shape-outline=設線及箭頭顏色/粗細/樣式。 - 信息面板 (
panel): 不同於點狀標記。用於圖例/信息框。- 坐標代表面板左上角(其他形狀是中心點)。
- 文本默認嘗試放在面板內部 (
text-pos=left在左上角左對齊)。 - 類似
box,mark-size=W,H,R設置寬、高、圓角。
- 圖像 (
image): 默認形狀。mark=指定共享資源文件名。未指定則顯示紅色標記點(pog)。圖像現在可加輪廓(shape-outline=)。圖像比例固定(不被擠壓/拉伸)。非正方形圖像最好提供mark-dim=或mark-size=宽,高以優化標籤定位。
- 基礎形狀 (
- 連接線 (作為
label-pos的附加選項): 有四種方式向地圖添加連接線 (with-line, n-line, mark-line, photo-panel):with-line: 用ldx/ldy指定一個偏移點,從標記畫線到此點,標籤放在該點旁 (例:label-pos2=left,with-line|ldx2=-15|ldy2=-3)。用於將擁擠區域的標籤移到清晰位置。n-line: 類似with-line,專用於帶編號的形狀。用於將重疊點的編號「拉」出來放在線端。編號也可作為維基鏈接。mark-line: 從當前形狀 (markX) 向前一個形狀 (markX-1) 畫連接線。不涉及ldx/ldy或標籤。label-posX=right, mark-line, 2畫 2px 粗的線,顏色由shape-outlineX決定。可添加線型(solid/dashed/dotted)和間隙大小(>1 畫雙線,例:label-pos-top, mark-line,3, dotted,6)。photo-panel: 創建帶照片(來自mark-image=)和文本的面板,並帶連接線。需要尺寸參數 (例:label-pos=left,photo-panel,0.8,110)。面板位置由ldx/ldy設定。可設置高度 (例:label-pos=left,photo-panel,0,90,24創建無照片文本面板)。
- 標籤 (
label=) 增強:- 可顯示帶懸停效果的維基文本(使用 SVG 標記時默認啟用)。
- 可使用
^添加換行符 (例:label=Chester~field ^Railway ^Station)。 label-size=新增選項:添加米色背景 (background) 覆蓋複雜底圖;添加 1px 黑色圓角輪廓 (outline) 突出標籤 (例:label-size3=13,background,outline)。- 其他控制:
label-pos=,label-size=,label-color=(含不透明度),label-angle=,ldx/ldy=。
重大升級:Lua 重寫 (2025 年)
- 核心優勢:
- 點數無上限: 移除之前 60 個標記點的限制。
- 性能飛躍: 顯著減少處理時間和資源占用,頁面加載速度提升約 80%。
- 完全兼容: 功能等同於 CSS 版,地圖顯示效果「近乎相同」。
- 弧形文本擴展: 最多支持 26 條弧線 (使用
arc-textA到arc-textZ),替代舊版的A, B, C。(註: 過多弧線可能影響可讀性)。
- 新增與改進功能:
- 標籤格式化:
label-spacing=:增加字母間距(像素值,默認 0)。label-height=:設置多行標籤的行高(相對於label-size的百分比,默認 120)。
- 標籤位置 (
label-pos): 除了top/bottom/left/right,新增 8 個羅盤點選項 (northeast, southeast, southwest, northwest, north, east, south, west),減少對ldx/ldy調整的依賴。 - 自動圖注 (
auto-caption=):- 可指定欄數 (
columns=N) 替代欄寬。 - 可添加
collapsible或collapsed使列表可摺疊/默認摺疊 (例:auto-caption=30 collapsed)。 - 默認切換文本為
[Hide/show caption list],可用toggletext=自定義 (例:auto-caption=collapsed columns=2| toggletext=[Show/Hide the list of battles])。
- 可指定欄數 (
- 高亮功能 (
highlight=): 當同一地圖用於多個頁面時,可突出顯示與當前頁面主題相關的特定點。定義shapeH, shape-outlineH, shape-colorH等屬性,然後在調用模板時指定highlight=点编号(例:{{myOSMmap|highlight=4}})。模板內需傳遞|highlight={{{highlight|}}}}。
- 標籤格式化:

371yds
- 新形狀 (基於 CSS
clip-path): 引入一系列帶單層(D)或雙層(DD)「外線」(非真正輪廓)的實心形狀:squareD, squareDD, triangleD, triangleDD, circleD, circleDD, diamond, diamondD, diamondDDthincross, cross, crossD, fivepointstar, fivepointstarD, sixpointstar, sixpointstarD, sevenpointstar, sevenpointstarD, eightpointstar, eightpointstarD, ring- (
boxD/DD,ellipseD/DD是squareD/DD,circleD/DD的同義詞)。
- 圖例框 (
legendBox=,legendItem(n)=): 在地圖固定位置(相對於左上角,單位px)添加解釋性圖例框。定義尺寸、位置、標題、背景/文本顏色。legendItem指定解釋文本、關聯點編號及距框頂距離 (px)。自動化程度高,但panel形狀提供更精細控制。 - 放大 (
magnify=): 按比例放大所有地圖要素(底圖、標籤、形狀)。用於在縮放級別之間提供中間尺寸。- 作用: 當某縮放級別要素太小,而下一級又過大時,提供折中 (例:
magnify=1.4放大 1.4 倍)。 - 特點: 比例尺數值會相應調整。底圖細節不增加(與真正提高
zoom不同)。地名也會放大(若太大可nolabels=1關閉並自行添加標籤)。 - 限制: 只能放大 (>1),不能縮小 (<1)。推薦範圍 1.2-1.5。當前存在與
float=centre的兼容性問題,建議使用left/right。
- 作用: 當某縮放級別要素太小,而下一級又過大時,提供折中 (例:
- 複雜地圖能力: 模板現在能處理高度複雜的 OSM 地圖,支持標籤/符號層、多個數據層(如維基數據中的輪廓、通過
map-raw=傳遞的 GeoJSON)。允許通過點擊交互探索更多數據(如地質信息、火山細節),同時初始視圖保持清晰抽象。
- 新形狀 (基於 CSS
另請參閱
[編輯]Template:Location map- 基礎單點定位圖。Template:Location map+- 多點定位圖。Template:Location map many- 另一種多點定位圖。Commons:Category:Map pointers- 大量標記點圖標。Template:Overlay- 在圖片上疊加編號標籤。Wikipedia:WikiProject Maps- 維基地圖項目資源。Module:OSM Location map- 本模板依賴的 Lua 模塊。Template:OSM Location map/examples- 示例地圖。Template:OSM Location map/Return to service- 2025 年更新詳情和功能演示。Template:OSM Location map/ArcText/doc- 弧線文本詳細指南。Help:Extension:Kartographer- Kartographer 擴展文檔。
- ^ Royal Commission on the Ancient and Historical Monuments of Wales. Glamorgan Inventory, Vol 1, Part 2: The Iron Age and Roman Occupation. 1976: 100.
- ^ Tullock 1992,Fig.1.






