首页 / OpenLayers / 使用示例
WMS 图层
底图不再用现成瓦片,而是走 WMS 服务;上面再叠一层国界线,透明度可调。 OGC 服务的接入方式与瓦片类似,差别集中在请求参数。
源码与运行效果
说明
两个 ol.source.TileWMS 共用同一个服务地址,靠
params.LAYERS 区分图层。上层必须显式带
TRANSPARENT: true 和 FORMAT: 'image/png',
否则返回的图片带白色背景,会把底图完全遮住。
| 配置 | 取值 | 原因 |
|---|---|---|
params.LAYERS | bluemarble | 服务端图层标识,大小写敏感 |
params.TILED | 本例不使用 | MapServer 不支持该参数,逐瓦片请求即可 |
serverType | 'mapserver' | 决定 BBOX 与轴序的拼装方式 |
crossOrigin | 'anonymous' | 允许 canvas 读取像素,便于导出 |
transition | 0 | 关闭淡入,避免专题图闪烁 |
状态栏监听 tileloadend 与 tileloaderror。
前者说明服务正常返回,后者通常是图层名写错、服务地址不可达或跨域被拒。
示例用的是公开的 MapServer 演示服务,只用于演示接入方式。
换成内网服务时,先确认它声明的支持坐标系包含 EPSG:3857,
否则视图与返回图会对不上位置。