`r`n
经纬志
`r`n
`r`n
首页 / OpenLayers / 使用示例
`r`n

图层裁剪

在渲染前给画布加一个圆形裁剪路径,让影像只显示指定区域。

OpenLayers 10.3.1 · 更新 2026-10-27
`r`n
源码与运行效果
运行效果
`r`n

说明

图层渲染前后各有一个钩子:prerender 拿到画布上下文后 clip() 一个形状,postrender 里 restore()。 示例把一张模式影像裁成圆形,半径由滑块控制。

裁剪只影响绘制,要素数据仍然完整;关掉裁剪后影像恢复完整矩形, 说明裁剪是渲染层行为而非数据过滤。

操作结果
拖动半径滑块圆形裁剪范围变化
取消勾选「启用裁剪」影像恢复完整矩形范围
平移地图裁剪圆固定在屏幕中心

prerender 中的 save() 必须与 postrender 的 restore() 成对,否则会影响其他图层的绘制状态。

`r`n
`r`n