在生成栅格瓦片(如 PNG 切片)时,标注丢失是一个常见问题,通常是由于标注在单个瓦片的边缘被硬截断造成的。QGIS 渲染标注时以整个地图视图为基准,但输出瓦片时会按固定网格(如 256×256)裁切,若标注跨两个或多个瓦片,则每个瓦片上只会保留落在该瓦片内的部分,导致断裂或丢失。
解决办法主要有以下两种。
栅格瓦片 + 元瓦片
使用 QGIS 的 生成 XYZ 切片(目录) 或 生成 XYZ 切片(MBTiles) 工具,并启用 元瓦片大小 参数。
元瓦片会先渲染一个大尺寸的中间图像(例如 4×4 的瓦片组合),然后再切分成标准瓦片。这样标注可以在更大的画布上完整渲染,避免边缘截断。
算法名称: 生成 XYZ 切片(目录)
算法 ID: native:tilesxyzdirectory
算法名称: 生成 XYZ 切片(MBTiles)
算法 ID: native:tilesxyzmbtiles
打开算法对话框后,在参数面板中找到 元瓦片大小(Metatile size),将其设置为大于 1 的值,例如 4 或 8(越大越完整,但渲染时间稍长)。

备选:转换为矢量瓦片
如果你对标注的灵活性要求高,可以改用 矢量瓦片(MBTiles)。矢量瓦片存储点、线、面及标注样式数据,由前端动态渲染,标注永远不会被裁切。
算法名称: 写入矢量切片(MBTiles)
算法 ID: native:writevectortiles_mbtiles
适用场景:
需要频繁变换标注样式、多语言标注或前端交互。
地图需要支持无极缩放且标注清晰。
注意: 矢量瓦片只能包含矢量图层,无法直接包含栅格底图,通常需搭配栅格底图同时使用。
以上内容基于 Geo Knowledge AI 插件 提供解决思路。初步验证可行。欢迎继续提问!